From cafc73619ed2ca2299d328c3f4068582b9d5f842 Mon Sep 17 00:00:00 2001 From: atom0s Date: Wed, 8 Jun 2016 01:11:48 -0700 Subject: [PATCH] Updated to version 2.0.0.0 - Removed FFACE / FFACETools requirements. - Ported to now use the EliteAPI. - Minor cleanups where applicable. - Removal of unneeded code. - Minor wrappers for annoying porting from FFACE to EliteAPI. --- CurePlease.csproj | 5 +- EliteAPI.dll | Bin 0 -> 59392 bytes EliteMMO.API.dll | Bin 0 -> 68096 bytes FFACETools.dll | Bin 263168 -> 0 bytes Form1.Designer.cs | 2 +- Form1.cs | 3956 ++++++++++++++++++++---------- Form2.Designer.cs | 2 +- Form2.cs | 1502 +++++++----- Form3.Designer.cs | 71 +- Form3.cs | 10 +- Items.cs | 277 ++- ProgressBar.cs | 12 +- Properties/AssemblyInfo.cs | 6 +- Properties/Resources.Designer.cs | 2 +- 14 files changed, 3702 insertions(+), 2143 deletions(-) create mode 100644 EliteAPI.dll create mode 100644 EliteMMO.API.dll delete mode 100644 FFACETools.dll diff --git a/CurePlease.csproj b/CurePlease.csproj index 00c7287..b66471c 100644 --- a/CurePlease.csproj +++ b/CurePlease.csproj @@ -54,9 +54,8 @@ Cure Please Icon.ico - - False - .\FFACETools.dll + + .\EliteMMO.API.dll diff --git a/EliteAPI.dll b/EliteAPI.dll new file mode 100644 index 0000000000000000000000000000000000000000..27d57bd6155cef0a1c73842c39b67de17a6e2bba GIT binary patch literal 59392 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 literal 0 HcmV?d00001 diff --git a/EliteMMO.API.dll b/EliteMMO.API.dll new file mode 100644 index 0000000000000000000000000000000000000000..cb968ee2083d839ac06b224a0b6f6665d3252bab GIT binary patch literal 68096 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∈-Hl26lrie+lEFK4aD~hssnKl$sJkRupGCi)r5m_ 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 Wmyf$rN + /// Player Statuses + /// + public enum Status : byte + { + Standing = 0, + Fighting = 1, + Dead1 = 2, + Dead2 = 3, + Event = 4, + Chocobo = 5, + Healing = 33, + Synthing = 44, + Sitting = 47, + Fishing = 56, + FishBite = 57, + Obtained = 58, + RodBreak = 59, + LineBreak = 60, + CatchMonster = 61, + LostCatch = 62, + Unknown + + } // @ public enum Status : byte + + ///

+ /// Ability List + /// + public enum AbilityList : byte + { + Two_Hour = 0, + Berserk = 1, + Warcry = 2, + Defender = 3, + Aggressor = 4, + Provoke = 5, + Enrage = 6, + Tomahawk = 7, + Retaliation = 8, + Restraint = 9, + Rune_Enhancement_Elemental = 10, + Blood_Rage = 11, + Focus = 13, + Dodge = 14, + Chakra = 15, + Boost = 16, + Counterstance = 17, + Chi_Blast = 18, + Mantra = 19, + Formless_Strikes = 20, + Footwork = 21, + Perfect_Counter = 22, + Vallation = 23, + Swordplay = 24, + Lunge = 25, + Divine_Seal = 26, + Martyr = 27, + Devotion = 28, + Afflatus_Solace = 29, + Afflatus_Misery = 30, + Impetus = 31, + Divine_Caress = 32, + Sacrosanctity = 33, + Enmity_Douse = 34, + Manawell = 35, + Saboteur = 36, + Spontaneity = 37, + Elemental_Seal = 38, + Mana_Wall = 39, + Conspirator = 40, + Sepulcher = 41, + Palisade = 42, + Arcane_Crest = 43, + Scarlet_Delirium = 44, + Spur = 45, + Run_Wild = 46, + Tenuto = 47, + Marcato = 48, + Convert = 49, + Composure = 50, + Bounty_Shot = 51, + Decoy_Shot = 52, + Hamanoha = 53, + Hagakure = 54, + Issekigan = 57, + Dragon_Breaker = 58, + Pflug = 59, + Steal = 60, + Despoil = 61, + Flee = 62, + Hide = 63, + Sneak_Attack = 64, + Mug = 65, + Trick_Attack = 66, + Assassins_Charge = 67, + Feint = 68, + Accomplice = 69, + Steady_Wing = 70, + Mana_Cede = 71, + Embolden = 72, + Shield_Bash = 73, + Holy_Circle = 74, + Sentinel = 75, + Cover = 76, + Rampart = 77, + Fealty = 78, + Chivalry = 79, + Divine_Emblem = 80, + Unbridled_Learning = 81, + Triple_Shot = 84, + Souleater = 85, + Arcane_Circle = 86, + Last_Resort = 87, + Weapon_Bash = 88, + Dark_Seal = 89, + Diabolic_Eye = 90, + Nether_Void = 91, + Rune_Enchantment = 92, + Charm = 97, + Gauge = 98, + Tame = 99, + Fight = 100, + Heel = 101, + Sic = 102, + Reward = 103, + Call_Beast = 104, + Feral_Howl = 105, + Killer_Instinct = 106, + Snarl = 107, + Nightingale = 109, + Troubadour = 110, + Pianissimo = 112, + Valiance = 113, + Cooldown = 114, + Deus_Ex_Automata = 115, + Gambit = 116, + Liement = 117, + One_for_All = 118, + Rayke = 119, + Battuta = 120, + Scavenge = 121, + Shadowbind = 122, + Camouflage = 123, + Sharpshot = 124, + Barrage = 125, + Unlimited_Shot = 126, + Stealth_Shot = 127, + Flashy_Shot = 128, + Velocity_Shot = 129, + Widened_Compass = 130, + Odyllic_Subterfuge = 131, + Konzen_ittai = 132, + Third_Eye = 133, + Meditate = 134, + Warding_Circle = 135, + Shikikoyo = 136, + Blade_Bash = 137, + Hasso = 138, + Seigan = 139, + Sekkanoki = 140, + Sengikori = 141, + Ward = 142, + Effusion = 143, + Sange = 145, + Yonin = 146, + Innin = 147, + Futae = 148, + Ancient_Circle = 157, + Jump = 158, + High_Jump = 159, + Super_Jump = 160, + Dismiss = 161, + Spirit_Link = 162, + Call_Wyvern = 163, + Deep_Breathing = 164, + Angon = 165, + Assault = 170, + Retreat = 171, + Release = 172, + Blood_Pact_Rage = 173, + Blood_Pact_Ward = 174, + Elemental_Siphon = 175, + Avatars_Favor = 176, + Chain_Affinity = 181, + Burst_Affinity = 182, + Convergence = 183, + Diffusion = 184, + Efflux = 185, + COR_Roll = 193, + Double_Up = 194, + Elemental_Shot = 195, + Random_Deal = 196, + Snake_Eye = 197, + Fold = 198, + Quick_Draw = 199, + Activate = 205, + Repair = 206, + Deploy = 207, + Deactivate = 208, + Retrieve = 209, + Fire_Maneuver = 210, + Role_Reversal = 211, + Ventriloquy = 212, + Tactical_Switch = 213, + Maintenance = 214, + Healing_Waltz = 215, + Sambas = 216, + Curing_Waltz = 217, + Spectral_Jig = 218, + Saber_Dance = 219, + Steps = 220, + Flourishes_I = 221, + Reverse_Flourish = 222, + No_Foot_Rise = 223, + Fan_Dance = 224, + Divine_Waltz = 225, + Flourishes_III = 226, + Waltzes = 227, + Light_Arts = 228, + Modus_Veritas = 230, + Penury = 231, + Dark_Arts = 232, + Stratagems = 233, + Sublimation = 234, + Enlightenment = 235, + Presto = 236, + Libra = 237, + Smiting_Breath = 238, + Restoring_Breath = 239, + Bully = 240, + Swipe = 241, + Vivacious_Pulse = 242, + Full_Circle = 243, + Lasting_Emanation = 244, + Collimated_Fervor = 245, + Life_Cycle = 246, + Blaze_Glory = 247, + Dematerialize = 248, + Theurgic_Focus = 249, + Concentric_Pulse = 250, + Mending_Halation = 251, + Radial_Arcana = 252, + Relinquish = 253, + SP_II = 254, + Pet_commands = 255 + + } // @ public enum AbilityList : byte + + /// + /// Spell List + /// + public enum SpellList : short + { + Unknown = 0, + Cure = 2, + Cure_II = 4, + Cure_III = 6, + Cure_IV = 8, + Cure_V = 10, + Cure_VI = 12, + Curaga = 14, + Curaga_II = 16, + Curaga_III = 18, + Curaga_IV = 20, + Curaga_V = 22, + Raise = 24, + Raise_II = 26, + Poisona = 28, + Paralyna = 30, + Blindna = 32, + Silena = 34, + Stona = 36, + Viruna = 38, + Cursna = 40, + Holy = 42, + Holy_II = 44, + Dia = 46, + Dia_II = 48, + Dia_III = 50, + Dia_IV = 52, + Dia_V = 54, + Banish = 56, + Banish_II = 58, + Banish_III = 60, + Banish_IV = 62, + Banish_V = 64, + Diaga = 66, + Diaga_II = 68, + Diaga_III = 70, + Diaga_IV = 72, + Diaga_V = 74, + Banishga = 76, + Banishga_II = 78, + Banishga_III = 80, + Banishga_IV = 82, + Banishga_V = 84, + Protect = 86, + Protect_II = 88, + Protect_III = 90, + Protect_IV = 92, + Protect_V = 94, + Shell = 96, + Shell_II = 98, + Shell_III = 100, + Shell_IV = 102, + Shell_V = 104, + Blink = 106, + Stoneskin = 108, + Aquaveil = 110, + Slow = 112, + Haste = 114, + Paralyze = 116, + Silence = 118, + Barfire = 120, + Barblizzard = 122, + Baraero = 124, + Barstone = 126, + Barthunder = 128, + Barwater = 130, + Barfira = 132, + Barblizzara = 134, + Baraera = 136, + Barstonra = 138, + Barthundra = 140, + Barwatera = 142, + Barsleep = 144, + Barpoison = 146, + Barparalyze = 148, + Barblind = 150, + Barsilence = 152, + Barpetrify = 154, + Barvirus = 156, + Slow_II = 158, + Paralyze_II = 160, + Recall_Jugner = 162, + Recall_Pashh = 164, + Recall_Meriph = 166, + Baramnesia = 168, + Baramnesra = 170, + Barsleepra = 172, + Barpoisonra = 174, + Barparalyzra = 176, + Barblindra = 178, + Barsilencera = 180, + Barpetra = 182, + Barvira = 184, + Cura = 186, + Sacrifice = 188, + Esuna = 190, + Auspice = 192, + Reprisal = 194, + Repose = 196, + Sandstorm = 198, + Enfire = 200, + Enblizzard = 202, + Enaero = 204, + Enstone = 206, + Enthunder = 208, + Enwater = 210, + Phalanx = 212, + Phalanx_II = 214, + Regen = 216, + Refresh = 218, + Regen_II = 220, + Regen_III = 222, + Flash = 224, + Rainstorm = 226, + Windstorm = 228, + Firestorm = 230, + Hailstorm = 232, + Thunderstorm = 234, + Voidstorm = 236, + Aurorastorm = 238, + Teleport_Yhoat = 240, + Teleport_Altep = 242, + Teleport_Holla = 244, + Teleport_Dem = 246, + Teleport_Mea = 248, + Protectra = 250, + Protectra_II = 252, + Protectra_III = 254, + Protectra_IV = 256, + Protectra_V = 258, + Shellra = 260, + Shellra_II = 262, + Shellra_III = 264, + Shellra_IV = 266, + Shellra_V = 268, + Reraise = 270, + Invisible = 272, + Sneak = 274, + Deodorize = 276, + Teleport_Vahzl = 278, + Raise_III = 280, + Reraise_II = 282, + Reraise_III = 284, + Erase = 286, + Fire = 288, + Fire_II = 290, + Fire_III = 292, + Fire_IV = 294, + Fire_V = 296, + Blizzard = 298, + Blizzard_II = 300, + Blizzard_III = 302, + Blizzard_IV = 304, + Blizzard_V = 306, + Aero = 308, + Aero_II = 310, + Aero_III = 312, + Aero_IV = 314, + Aero_V = 316, + Stone = 318, + Stone_II = 320, + Stone_III = 322, + Stone_IV = 324, + Stone_V = 326, + Thunder = 328, + Thunder_II = 330, + Thunder_III = 332, + Thunder_IV = 334, + Thunder_V = 336, + Water = 338, + Water_II = 340, + Water_III = 342, + Water_IV = 344, + Water_V = 346, + Firaga = 348, + Firaga_II = 350, + Firaga_III = 352, + Firaga_IV = 354, + Firaga_V = 356, + Blizzaga = 358, + Blizzaga_II = 360, + Blizzaga_III = 362, + Blizzaga_IV = 364, + Blizzaga_V = 366, + Aeroga = 368, + Aeroga_II = 370, + Aeroga_III = 372, + Aeroga_IV = 374, + Aeroga_V = 376, + Stonega = 378, + Stonega_II = 380, + Stonega_III = 382, + Stonega_IV = 384, + Stonega_V = 386, + Thundaga = 388, + Thundaga_II = 390, + Thundaga_III = 392, + Thundaga_IV = 394, + Thundaga_V = 396, + Waterga = 398, + Waterga_II = 400, + Waterga_III = 402, + Waterga_IV = 404, + Waterga_V = 406, + Flare = 408, + Flare_II = 410, + Freeze = 412, + Freeze_II = 414, + Tornado = 416, + Tornado_II = 418, + Quake = 420, + Quake_II = 422, + Burst = 424, + Burst_II = 426, + Flood = 428, + Flood_II = 430, + Gravity = 432, + Gravity_II = 434, + Meteor = 436, + Comet = 438, + Poison = 440, + Poison_II = 442, + Poison_III = 444, + Poison_IV = 446, + Poison_V = 448, + Poisonga = 450, + Poisonga_II = 452, + Poisonga_III = 454, + Poisonga_IV = 456, + Poisonga_V = 458, + Bio = 460, + Bio_II = 462, + Bio_III = 464, + Bio_IV = 466, + Bio_V = 468, + Burn = 470, + Frost = 472, + Choke = 474, + Rasp = 476, + Shock = 478, + Drown = 480, + Retrace = 482, + Absorb_ACC = 484, + Absorb_Attri = 486, + Meteor_II = 488, + Drain = 490, + Drain_II = 492, + Aspir = 494, + Aspir_II = 496, + Blaze_Spikes = 498, + Ice_Spikes = 500, + Shock_Spikes = 502, + Stun = 504, + Sleep = 506, + Blind = 508, + Break = 510, + Virus = 512, + Curse = 514, + Bind = 516, + Sleep_II = 518, + Dispel = 520, + Warp = 522, + Warp_II = 524, + Escape = 526, + Tractor = 528, + Tractor_II = 530, + Absorb_STR = 532, + Absorb_DEX = 534, + Absorb_VIT = 536, + Absorb_AGI = 538, + Absorb_INT = 540, + Absorb_MND = 542, + Absorb_CHR = 544, + Sleepga_DRK = 546, + Sleepga_II_DRK = 548, + Absorb_TP = 550, + Blind_II_DRK = 552, + Dread_Spikes = 554, + Geohelix = 556, + Hydrohelix = 558, + Anemohelix = 560, + Pyrohelix = 562, + Cryohelix = 564, + Ionohelix = 566, + Noctohelix = 568, + Luminohelix = 570, + Addle = 572, + Klimaform = 574, + Fire_Spirit = 576, + Ice_Spirit = 578, + Air_Spirit = 580, + Earth_Spirit = 582, + Thunder_Spirit = 584, + Water_Spirit = 586, + Light_Spirit = 588, + Dark_Spirit = 590, + Carbuncle = 592, + Fenrir = 594, + Ifrit = 596, + Titan = 598, + Leviathan = 600, + Garuda = 602, + Shiva = 604, + Ramuh = 606, + Diabolos = 608, + Odin = 610, + Alexander = 612, + Cait_Sith = 614, + Animus_Augeo = 616, + Animus_Minuo = 618, + Enlight = 620, + Endark = 622, + Enfire_II = 624, + Enblizzard_II = 626, + Enaero_II = 628, + Enstone_II = 630, + Enthunder_II = 632, + Enwater_II = 634, + Monomi_Ichi = 636, + Aisha_Ichi = 638, + Katon_Ichi = 640, + Katon_Ni = 642, + Katon_San = 644, + Hyoton_Ichi = 646, + Hyoton_Ni = 648, + Hyoton_San = 650, + Huton_Ichi = 652, + Huton_Ni = 654, + Huton_San = 656, + Doton_Ichi = 658, + Doton_Ni = 660, + Doton_San = 662, + Raiton_Ichi = 664, + Raiton_Ni = 666, + Raiton_San = 668, + Suiton_Ichi = 670, + Suiton_Ni = 672, + Suiton_San = 674, + Utsusemi_Ichi = 676, + Utsusemi_Ni = 678, + Utsusemi_San = 680, + Jubaku_Ichi = 682, + Jubaku_Ni = 684, + Jubaku_San = 686, + Hojo_Ichi = 688, + Hojo_Ni = 690, + Hojo_San = 692, + Kurayami_Ichi = 694, + Kurayami_Ni = 696, + Kurayami_San = 698, + Dokumori_Ichi = 700, + Dokumori_Ni = 702, + Dokumori_San = 704, + Tonko_Ichi = 706, + Tonko_Ni = 708, + Tonko_San = 710, + Paralyga = 712, + Slowga = 714, + Hastega = 716, + Silencega = 718, + Dispelga = 720, + Blindga = 722, + Bindga = 724, + Sleepga = 726, + Sleepga_II = 728, + Breakga = 730, + Graviga = 732, + Death = 734, + Foe_Requiem = 736, + Foe_Requiem_II = 738, + Foe_Requiem_III = 740, + Foe_Requiem_IV = 742, + Foe_Requiem_V = 744, + Foe_Requiem_VI = 746, + Foe_Requiem_VII = 748, + Foe_Requiem_VIII = 750, + Horde_Lullaby = 752, + Horde_Lullaby_II = 754, + Armys_Paeon = 756, + Armys_Paeon_II = 758, + Armys_Paeon_III = 760, + Armys_Paeon_IV = 762, + Armys_Paeon_V = 764, + Armys_Paeon_VI = 766, + Armys_Paeon_VII = 768, + Armys_Paeon_VIII = 770, + Mages_Ballad = 772, + Mages_Ballad_II = 774, + Mages_Ballad_III = 776, + Knights_Minne = 778, + Knights_Minne_II = 780, + Knights_Minne_III = 782, + Knights_Minne_IV = 784, + Knights_Minne_V = 786, + Valor_Minuet = 788, + Valor_Minuet_II = 790, + Valor_Minuet_III = 792, + Valor_Minuet_IV = 794, + Valor_Minuet_V = 796, + Sword_Madrigal = 798, + Blade_Madrigal = 800, + Hunters_Prelude = 802, + Archers_Prelude = 804, + Sheepfoe_Mambo = 806, + Dragonfoe_Mambo = 808, + Fowl_Aubade = 810, + Herb_Pastoral = 812, + Chocobo_Hum = 814, + Shining_Fantasia = 816, + Scops_Operetta = 818, + Puppets_Operetta = 820, + Jesters_Operetta = 822, + Gold_Capriccio = 824, + Devotee_Serenade = 826, + Warding_Round = 828, + Goblin_Gavotte = 830, + Cactuar_Fugue = 832, + Moogle_Rhapsody = 834, + Protected_Aria = 836, + Advancing_March = 838, + Victory_March = 840, + Battlefield_Elegy = 842, + Carnage_Elegy = 844, + Massacre_Elegy = 846, + Sinewy_Etude = 848, + Dextrous_Etude = 850, + Vivacious_Etude = 852, + Quick_Etude = 854, + Learned_Etude = 856, + Spirited_Etude = 858, + Enchanting_Etude = 860, + Herculean_Etude = 862, + Uncanny_Etude = 864, + Vital_Etude = 866, + Swift_Etude = 868, + Sage_Etude = 870, + Logical_Etude = 872, + Bewitching_Etude = 874, + Fire_Carol = 876, + Ice_Carol = 878, + Wind_Carol = 880, + Earth_Carol = 882, + Lightning_Carol = 884, + Water_Carol = 886, + Light_Carol = 888, + Dark_Carol = 890, + Fire_Carol_II = 892, + Ice_Carol_II = 894, + Wind_Carol_II = 896, + Earth_Carol_II = 898, + Lightning_Carol_II = 900, + Water_Carol_II = 902, + Light_Carol_II = 904, + Dark_Carol_II = 906, + Fire_Threnody = 908, + Ice_Threnody = 910, + Wind_Threnody = 912, + Earth_Threnody = 914, + Lightning_Threnody = 916, + Water_Threnody = 918, + Light_Threnody = 920, + Dark_Threnody = 922, + Magic_Finale = 924, + Foe_Lullaby = 926, + Goddesss_Hymnus = 928, + Chocobo_Mazurka = 930, + Maidens_Virelai = 932, + Raptor_Mazurka = 934, + Foe_Sirvente = 936, + Adventurers_Dirge = 938, + Sentinels_Scherzo = 940, + Foe_Lullaby_II = 942, + Pining_Nocturne = 944, + Refresh_II = 946, + Cura_II = 948, + Cura_III = 950, + Crusade = 952, + Regen_IV = 954, + Embrava = 956, + Boost_STR = 958, + Boost_DEX = 960, + Boost_VIT = 962, + Boost_AGI = 964, + Boost_INT = 966, + Boost_MND = 968, + Boost_CHR = 970, + Gain_STR = 972, + Gain_DEX = 974, + Gain_VIT = 976, + Gain_AGI = 978, + Gain_INT = 980, + Gain_MND = 982, + Gain_CHR = 984, + Temper = 986, + Arise = 988, + Adloquium = 990, + Firaja = 992, + Blizzaja = 994, + Aeroja = 996, + Stoneja = 998, + Thundaja = 1000, + Waterja = 1002, + Kaustra = 1004, + Impact = 1006, + Regen_V = 1008, + Gekka_Ichi = 1010, + Yain_Ichi = 1012, + Myoshu_Ichi = 1014, + Yurin_Ichi = 1016, + Kakka_Ichi = 1018, + Migawari_Ichi = 1020, + Haste_II = 1022, + Venom_Shell = 1026, + Maelstrom = 1030, + Metallic_Body = 1034, + Screwdriver = 1038, + MP_Drainkiss = 1042, + Death_Ray = 1044, + Sandspin = 1048, + Smite_of_Rage = 1054, + Bludgeon = 1058, + Refueling = 1060, + Ice_Break = 1062, + Blitzstrahl = 1064, + Self_Destruct = 1066, + Mysterious_Light = 1068, + Cold_Wave = 1070, + Poison_Breath = 1072, + Stinking_Gas = 1074, + Memento_Mori = 1076, + Terror_Touch = 1078, + Spinal_Cleave = 1080, + Blood_Saber = 1082, + Digest = 1084, + Mandibular_Bite = 1086, + Cursed_Sphere = 1088, + Sickle_Slash = 1090, + Cocoon = 1094, + Filamented_Hold = 1096, + Pollen = 1098, + Power_Attack = 1102, + Death_Scissors = 1108, + Magnetite_Cloud = 1110, + Eyes_On_Me = 1114, + Frenetic_Rip = 1120, + Frightful_Roar = 1122, + Hecatomb_Wave = 1126, + Body_Slam = 1128, + Radiant_Breath = 1130, + Helldive = 1134, + Jet_Stream = 1138, + Blood_Drain = 1140, + Sound_Blast = 1144, + Feather_Tickle = 1146, + Feather_Barrier = 1148, + Jettatura = 1150, + Yawn = 1152, + Foot_Kick = 1154, + Wild_Carrot = 1156, + Voracious_Trunk = 1158, + Healing_Breeze = 1162, + Chaotic_Eye = 1164, + Sheep_Song = 1168, + Ram_Charge = 1170, + Claw_Cyclone = 1174, + Lowing = 1176, + Dimensional_Death = 1178, + Heat_Breath = 1182, + Blank_Gaze = 1184, + Magic_Fruit = 1186, + Uppercut = 1188, + Thousand_Needles = 1190, + Pinecone_Bomb = 1192, + Sprout_Smack = 1194, + Soporific = 1196, + Queasyshroom = 1198, + Wild_Oats = 1206, + Bad_Breath = 1208, + Geist_Wall = 1210, + Awful_Eye = 1212, + Frost_Breath = 1216, + Infrasonics = 1220, + Disseverment = 1222, + Actinic_Burst = 1224, + Reactor_Cool = 1226, + Saline_Coat = 1228, + Plasma_Charge = 1230, + Temporal_Shift = 1232, + Vertical_Cleave = 1234, + Blastbomb = 1236, + Battle_Dance = 1240, + Sandspray = 1242, + Grand_Slam = 1244, + Head_Butt = 1246, + Bomb_Toss = 1252, + Frypan = 1256, + Flying_Hip_Press = 1258, + Hydro_Shot = 1262, + Diamondhide = 1264, + Enervation = 1266, + Light_of_Penance = 1268, + Warm_Up = 1272, + Firespit = 1274, + Feather_Storm = 1276, + Tail_Slap = 1280, + Hysteric_Barrage = 1282, + Amplification = 1284, + Cannonball = 1286, + Mind_Blast = 1288, + Exuviation = 1290, + Magic_Hammer = 1292, + Zephyr_Mantle = 1294, + Regurgitation = 1296, + Seedspray = 1300, + Corrosive_Ooze = 1302, + Spiral_Spin = 1304, + Asuran_Claws = 1306, + Sub_zero_Smash = 1308, + Triumphant_Roar = 1310, + Acrid_Stream = 1312, + Blazing_Bound = 1314, + Plenilune_Embrace = 1316, + Demoralizing_Roar = 1318, + Cimicine_Discharge = 1320, + Animating_Wail = 1322, + Battery_Charge = 1324, + Leafstorm = 1326, + Regeneration = 1328, + Final_Sting = 1330, + Goblin_Rush = 1332, + Vanity_Dive = 1334, + Magic_Barrier = 1336, + Whirl_of_Rage = 1338, + Benthic_Typhoon = 1340, + Auroral_Drape = 1342, + Osmosis = 1344, + Quad_Continuum = 1346, + Fantod = 1348, + Thermal_Pulse = 1350, + Empty_Thrash = 1354, + Dream_Flower = 1356, + Occultation = 1358, + Charged_Whisker = 1360, + Winds_Promyvion = 1362, + Delta_Thrust = 1364, + Everyones_Grudge = 1366, + Reaving_Wind = 1368, + Barrier_Tusk = 1370, + Mortal_Ray = 1372, + Water_Bomb = 1374, + Heavy_Strike = 1376, + Dark_Orb = 1378, + White_Wind = 1380, + Sudden_Lunge = 1384, + Quadrastrike = 1386, + Vapor_Spray = 1388, + Thunder_Breath = 1390, + O_Counterstance = 1392, + Amorphic_Spikes = 1394, + Wind_Breath = 1396, + Barbed_Crescent = 1398, + Nat_Meditation = 1400, + Tem_Upheaval = 1402, + Rending_Deluge = 1404, + Embalming_Earth = 1406, + Paralyzing_Triad = 1408, + Foul_Waters = 1410, + Glutinous_Dart = 1412, + Retinal_Glare = 1414, + Subduction = 1416, + Thrashing_Assault = 1418, + Erratic_Flutter = 1420, + Thunderbolt = 1472, + Harden_Shell = 1474, + Absolute_Terror = 1476, + Gates_of_Hades = 1478, + Tourbillion = 1480, + Pyric_Bulwark = 1482, + Bilgestorm = 1484, + Bloodrake = 1486, + Droning_Whirlwind = 1488, + Carcharian_Verve = 1490, + Blistering_Roar = 1492, + Indi_Regen = 1536, + Indi_Poison = 1538, + Indi_Refresh = 1540, + Indi_Haste = 1542, + Indi_STR = 1544, + Indi_DEX = 1546, + Indi_VIT = 1548, + Indi_AGI = 1550, + Indi_INT = 1552, + Indi_MND = 1554, + Indi_CHR = 1556, + Indi_Fury = 1558, + Indi_Barrier = 1560, + Indi_Acumen = 1562, + Indi_Fend = 1564, + Indi_Precision = 1566, + Indi_Voidance = 1568, + Indi_Focus = 1570, + Indi_Attunement = 1572, + Indi_Wilt = 1574, + Indi_Frailty = 1576, + Indi_Fade = 1578, + Indi_Malaise = 1580, + Indi_Slip = 1582, + Indi_Torpor = 1584, + Indi_Vex = 1586, + Indi_Languor = 1588, + Indi_Slow = 1590, + Indi_Paralysis = 1592, + Indi_Gravity = 1594, + Geo_Regen = 1596, + Geo_Poison = 1598, + Geo_Refresh = 1600, + Geo_Haste = 1602, + Geo_STR = 1604, + Geo_DEX = 1606, + Geo_VIT = 1608, + Geo_AGI = 1610, + Geo_INT = 1612, + Geo_MND = 1614, + Geo_CHR = 1616, + Geo_Fury = 1618, + Geo_Barrier = 1620, + Geo_Acumen = 1622, + Geo_Fend = 1624, + Geo_Precision = 1626, + Geo_Voidance = 1628, + Geo_Focus = 1630, + Geo_Attunement = 1632, + Geo_Wilt = 1634, + Geo_Frailty = 1636, + Geo_Fade = 1638, + Geo_Malaise = 1640, + Geo_Slip = 1642, + Geo_Torpor = 1644, + Geo_Vex = 1646, + Geo_Languor = 1648, + Geo_Slow = 1650, + Geo_Paralysis = 1652, + Geo_Gravity = 1654, + Fira = 1656, + Fira_II = 1658, + Blizzara = 1660, + Blizzara_II = 1662, + Aerora = 1664, + Aerora_II = 1666, + Stonera = 1668, + Stonera_II = 1670, + Thundara = 1672, + Thundara_II = 1674, + Watera = 1676, + Watera_II = 1678, + Foil = 1680, + Distract = 1682, + Distract_II = 1684, + Frazzle = 1686, + Frazzle_II = 1688, + Flurry = 1690, + Flurry_II = 1692, + Shantotto = 1792, + Naji = 1794, + Kupipi = 1796, + Excenmille = 1798, + Ayame = 1800, + Nanaa_Mihgo = 1802, + Curilla = 1804, + Volker = 1806, + Ajido_Marujido = 1808, + Trion = 1810, + Zeid = 1812, + Lion = 1814, + Tenzen = 1816, + Mihli_Aliapoh = 1818, + Valaineral = 1820, + Joachim = 1822, + Naja_Salaheem = 1824, + Prishe = 1826, + Ulmia = 1828, + Cherukiki = 1832, + Iron_Eater = 1834, + Gessho = 1836, + Gadalar = 1838, + Rainemard = 1840, + Ingrid = 1842, + Lehko_Habhoka = 1844, + Nashmeira = 1846, + Zazarg = 1848, + Ovjang = 1850, + Mnejing = 1852, + Sakura = 1854, + Luzaf = 1856, + Najelith = 1858, + Aldo = 1860, + Moogle = 1862, + Fablinix = 1864, + Maat = 1866, + D_Shantotto = 1868, + Star_Sibyl = 1870, + Elivira = 1882, + Noillurie = 1884, + Lhu_Mhakaracca = 1886, + Ferreous_Coffin = 1888, + Mumor = 1892, + Uka_Totlihn = 1894, + Klara = 1896, + Romaa_Mihgo = 1898, + Excenmille__S = 2008 + + } // @ public enum SpellList : short + + #endregion + + + private int GetInventoryItemCount(EliteAPI api, ushort itemid) + { + var count = 0; + for (var x = 0; x <= 80; x++) + { + var item = api.Inventory.GetContainerItem(0, x); + if (item != null && item.Id == itemid) + count += (int)item.Count; + } + + return count; + } + private int GetTempItemCount(EliteAPI api, ushort itemid) + { + var count = 0; + for (var x = 0; x <= 80; x++) + { + var item = api.Inventory.GetContainerItem(3, x); + if (item != null && item.Id == itemid) + count += (int)item.Count; + } + + return count; + } + private ushort GetItemId(string name) + { + var item = _ELITEAPIPL.Resources.GetItem(name, 0); + return item != null ? (ushort)item.ItemID : (ushort)0; + } + + + + + public static EliteAPI _ELITEAPIPL; + public EliteAPI _ELITEAPIMonitored; public ListBox processids = new ListBox(); // Stores the previously-colored button, if any - + float plX; float plY; float plZ; byte playerOptionsSelected; byte autoOptionsSelected; - - bool castingLock = false; - bool pauseActions = false; + + bool castingLock; + bool pauseActions; int castingSafetyPercentage = 100; - private bool islowmp = false; + private bool islowmp; //private Dictionary PTMemberList; #region "== Auto Casting bool" - bool[] autoHasteEnabled = new bool[] + bool[] autoHasteEnabled = new bool[] { false, false, @@ -57,7 +1167,7 @@ public partial class Form1 : Form false }; - bool[] autoHaste_IIEnabled = new bool[] + bool[] autoHaste_IIEnabled = new bool[] { false, false, @@ -79,7 +1189,7 @@ public partial class Form1 : Form false }; - bool[] autoFlurryEnabled = new bool[] + bool[] autoFlurryEnabled = new bool[] { false, false, @@ -101,7 +1211,7 @@ public partial class Form1 : Form false }; - bool[] autoFlurry_IIEnabled = new bool[] + bool[] autoFlurry_IIEnabled = new bool[] { false, false, @@ -123,8 +1233,8 @@ public partial class Form1 : Form false }; - bool[] autoPhalanx_IIEnabled = new bool[] - { + bool[] autoPhalanx_IIEnabled = new bool[] + { false, false, false, @@ -142,8 +1252,8 @@ public partial class Form1 : Form false, false, false, - false - }; + false + }; bool[] autoRegen_IVEnabled = new bool[] { @@ -164,7 +1274,7 @@ public partial class Form1 : Form false, false, false, - false + false }; bool[] autoRegen_VEnabled = new bool[] @@ -186,7 +1296,7 @@ public partial class Form1 : Form false, false, false, - false + false }; bool[] autoShell_IVEnabled = new bool[] @@ -277,7 +1387,7 @@ public partial class Form1 : Form false }; - + bool[] autoRefreshEnabled = new bool[] { @@ -298,7 +1408,7 @@ public partial class Form1 : Form false, false, false, - false + false }; bool[] autoRefresh_IIEnabled = new bool[] @@ -320,7 +1430,7 @@ public partial class Form1 : Form false, false, false, - false + false }; #endregion @@ -501,7 +1611,7 @@ public partial class Form1 : Form new DateTime(1970, 1, 1, 0, 0, 0), new DateTime(1970, 1, 1, 0, 0, 0) }; - + DateTime[] playerPhalanx_II = new DateTime[] { new DateTime(1970, 1, 1, 0, 0, 0), @@ -509,18 +1619,18 @@ public partial class Form1 : Form new DateTime(1970, 1, 1, 0, 0, 0), new DateTime(1970, 1, 1, 0, 0, 0), new DateTime(1970, 1, 1, 0, 0, 0), - new DateTime(1970, 1, 1, 0, 0, 0) + new DateTime(1970, 1, 1, 0, 0, 0) }; - DateTime[] playerRegen_IV = new DateTime[] - { + DateTime[] playerRegen_IV = new DateTime[] + { new DateTime(1970, 1, 1, 0, 0, 0), new DateTime(1970, 1, 1, 0, 0, 0), new DateTime(1970, 1, 1, 0, 0, 0), new DateTime(1970, 1, 1, 0, 0, 0), new DateTime(1970, 1, 1, 0, 0, 0), - new DateTime(1970, 1, 1, 0, 0, 0) - }; + new DateTime(1970, 1, 1, 0, 0, 0) + }; DateTime[] playerRegen_V = new DateTime[] { @@ -529,7 +1639,7 @@ public partial class Form1 : Form new DateTime(1970, 1, 1, 0, 0, 0), new DateTime(1970, 1, 1, 0, 0, 0), new DateTime(1970, 1, 1, 0, 0, 0), - new DateTime(1970, 1, 1, 0, 0, 0) + new DateTime(1970, 1, 1, 0, 0, 0) }; DateTime[] playerRefresh = new DateTime[] @@ -539,7 +1649,7 @@ public partial class Form1 : Form new DateTime(1970, 1, 1, 0, 0, 0), new DateTime(1970, 1, 1, 0, 0, 0), new DateTime(1970, 1, 1, 0, 0, 0), - new DateTime(1970, 1, 1, 0, 0, 0) + new DateTime(1970, 1, 1, 0, 0, 0) }; DateTime[] playerRefresh_II = new DateTime[] @@ -549,7 +1659,7 @@ public partial class Form1 : Form new DateTime(1970, 1, 1, 0, 0, 0), new DateTime(1970, 1, 1, 0, 0, 0), new DateTime(1970, 1, 1, 0, 0, 0), - new DateTime(1970, 1, 1, 0, 0, 0) + new DateTime(1970, 1, 1, 0, 0, 0) }; #endregion @@ -729,7 +1839,7 @@ public partial class Form1 : Form new TimeSpan(), new TimeSpan() }; - + TimeSpan[] playerPhalanx_IISpan = new TimeSpan[] { new TimeSpan(), @@ -737,7 +1847,7 @@ public partial class Form1 : Form new TimeSpan(), new TimeSpan(), new TimeSpan(), - new TimeSpan() + new TimeSpan() }; TimeSpan[] playerRegen_IVSpan = new TimeSpan[] @@ -747,7 +1857,7 @@ public partial class Form1 : Form new TimeSpan(), new TimeSpan(), new TimeSpan(), - new TimeSpan() + new TimeSpan() }; TimeSpan[] playerRegen_VSpan = new TimeSpan[] @@ -757,7 +1867,7 @@ public partial class Form1 : Form new TimeSpan(), new TimeSpan(), new TimeSpan(), - new TimeSpan() + new TimeSpan() }; TimeSpan[] playerRefreshSpan = new TimeSpan[] @@ -767,7 +1877,7 @@ public partial class Form1 : Form new TimeSpan(), new TimeSpan(), new TimeSpan(), - new TimeSpan() + new TimeSpan() }; TimeSpan[] playerRefresh_IISpan = new TimeSpan[] @@ -777,7 +1887,7 @@ public partial class Form1 : Form new TimeSpan(), new TimeSpan(), new TimeSpan(), - new TimeSpan() + new TimeSpan() }; #endregion @@ -785,68 +1895,68 @@ public partial class Form1 : Form //FFXI Process public Form1() { - InitializeComponent(); - Process[] pol = Process.GetProcessesByName("pol"); + this.InitializeComponent(); + var pol = Process.GetProcessesByName("pol"); if (pol.Length < 1) { - MessageBox.Show("FFXI not found"); + MessageBox.Show("FFXI not found"); } else { - for (int i = 0; i < pol.Length; i++) + for (var i = 0; i < pol.Length; i++) { - POLID.Items.Add(pol[i].MainWindowTitle); - POLID2.Items.Add(pol[i].MainWindowTitle); - processids.Items.Add(pol[i].Id); + this.POLID.Items.Add(pol[i].MainWindowTitle); + this.POLID2.Items.Add(pol[i].MainWindowTitle); + this.processids.Items.Add(pol[i].Id); } - POLID.SelectedIndex = 0; - POLID2.SelectedIndex = 0; - processids.SelectedIndex = 0; - } + this.POLID.SelectedIndex = 0; + this.POLID2.SelectedIndex = 0; + this.processids.SelectedIndex = 0; + } } private void setinstance_Click(object sender, EventArgs e) { - if (!CheckForDLLFiles()) + if (!this.CheckForDLLFiles()) { MessageBox.Show( - "Unable to locate FFACE.dll or FFACETools.dll\nMake sure both files are in the same directory as the application", + "Unable to locate EliteAPI.dll or EliteMMO.API.dll\nMake sure both files are in the same directory as the application", "Error"); return; } - processids.SelectedIndex = POLID.SelectedIndex; - _FFACEPL = new FFACE((int)processids.SelectedItem); - plLabel.Text = "Currently selected PL: " + _FFACEPL.Player.Name; - plLabel.ForeColor = Color.Green; - POLID.BackColor = Color.White; - plPosition.Enabled = true; - setinstance2.Enabled = true; + this.processids.SelectedIndex = this.POLID.SelectedIndex; + _ELITEAPIPL = new EliteAPI((int)this.processids.SelectedItem); + this.plLabel.Text = "Currently selected PL: " + _ELITEAPIPL.Player.Name; + this.plLabel.ForeColor = Color.Green; + this.POLID.BackColor = Color.White; + this.plPosition.Enabled = true; + this.setinstance2.Enabled = true; } private void setinstance2_Click(object sender, EventArgs e) { - if (!CheckForDLLFiles()) + if (!this.CheckForDLLFiles()) { MessageBox.Show( - "Unable to locate FFACE.dll or FFACETools.dll\nMake sure both files are in the same directory as the application", + "Unable to locate EliteAPI.dll or EliteMMO.API.dll\nMake sure both files are in the same directory as the application", "Error"); return; } - processids.SelectedIndex = POLID2.SelectedIndex; - _FFACEMonitored = new FFACE((int)processids.SelectedItem); - monitoredLabel.Text = "Currently monitoring: " + _FFACEMonitored.Player.Name; - monitoredLabel.ForeColor = Color.Green; - POLID2.BackColor = Color.White; - partyMembersUpdate.Enabled = true; - actionTimer.Enabled = true; - pauseButton.Enabled = true; - hpUpdates.Enabled = true; + this.processids.SelectedIndex = this.POLID2.SelectedIndex; + this._ELITEAPIMonitored = new EliteAPI((int)this.processids.SelectedItem); + this.monitoredLabel.Text = "Currently monitoring: " + this._ELITEAPIMonitored.Player.Name; + this.monitoredLabel.ForeColor = Color.Green; + this.POLID2.BackColor = Color.White; + this.partyMembersUpdate.Enabled = true; + this.actionTimer.Enabled = true; + this.pauseButton.Enabled = true; + this.hpUpdates.Enabled = true; } private bool CheckForDLLFiles() { - if (!File.Exists("fface.dll") || !File.Exists("ffacetools.dll")) + if (!File.Exists("eliteapi.dll") || !File.Exists("elitemmo.api.dll")) { return false; } @@ -857,348 +1967,347 @@ private bool CheckForDLLFiles() #region "== partyMemberUpdate" private bool partyMemberUpdateMethod(byte partyMemberId) { - if (_FFACEMonitored.PartyMember[partyMemberId].Active) + if (this._ELITEAPIMonitored.Party.GetPartyMembers()[partyMemberId].Active >= 1) { - if (_FFACEPL.Player.Zone == _FFACEMonitored.PartyMember[partyMemberId].Zone) + if (_ELITEAPIPL.Player.ZoneId == this._ELITEAPIMonitored.Party.GetPartyMembers()[partyMemberId].Zone) return true; return false; } return false; } - + private void partyMembersUpdate_Tick(object sender, EventArgs e) { - if (_FFACEPL == null || _FFACEMonitored == null) + if (_ELITEAPIPL == null || this._ELITEAPIMonitored == null) { return; } - if (_FFACEPL.Player.GetLoginStatus == LoginStatus.Loading || _FFACEMonitored.Player.GetLoginStatus == LoginStatus.Loading) + if (_ELITEAPIPL.Player.LoginStatus == (int)LoginStatus.Loading || this._ELITEAPIMonitored.Player.LoginStatus == (int)LoginStatus.Loading) { // We zoned out so wait 15 seconds before continuing any type of action - Thread.Sleep(15000); + Thread.Sleep(15000); } - if (_FFACEPL.Player.GetLoginStatus != LoginStatus.LoggedIn || _FFACEMonitored.Player.GetLoginStatus != LoginStatus.LoggedIn) + if (_ELITEAPIPL.Player.LoginStatus != (int)LoginStatus.LoggedIn || this._ELITEAPIMonitored.Player.LoginStatus != (int)LoginStatus.LoggedIn) { return; - } - if (partyMemberUpdateMethod(0)) + } + if (this.partyMemberUpdateMethod(0)) { - player0.Text = _FFACEMonitored.PartyMember[0].Name; - player0.Enabled = true; - player0optionsButton.Enabled = true; - player0buffsButton.Enabled = true; + this.player0.Text = this._ELITEAPIMonitored.Party.GetPartyMember(0).Name; + this.player0.Enabled = true; + this.player0optionsButton.Enabled = true; + this.player0buffsButton.Enabled = true; } else { - player0.Text = "Inactive or out of zone"; - player0.Enabled = false; - player0HP.Value = 0; - player0optionsButton.Enabled = false; - player0buffsButton.Enabled = false; + this.player0.Text = "Inactive or out of zone"; + this.player0.Enabled = false; + this.player0HP.Value = 0; + this.player0optionsButton.Enabled = false; + this.player0buffsButton.Enabled = false; } - if (partyMemberUpdateMethod(1)) + if (this.partyMemberUpdateMethod(1)) { - player1.Text = _FFACEMonitored.PartyMember[1].Name; - player1.Enabled = true; - player1optionsButton.Enabled = true; - player1buffsButton.Enabled = true; + this.player1.Text = this._ELITEAPIMonitored.Party.GetPartyMember(1).Name; + this.player1.Enabled = true; + this.player1optionsButton.Enabled = true; + this.player1buffsButton.Enabled = true; } else { - player1.Text = Resources.Form1_partyMembersUpdate_Tick_Inactive; - player1.Enabled = false; - player1HP.Value = 0; - player1optionsButton.Enabled = false; - player1buffsButton.Enabled = false; + this.player1.Text = Resources.Form1_partyMembersUpdate_Tick_Inactive; + this.player1.Enabled = false; + this.player1HP.Value = 0; + this.player1optionsButton.Enabled = false; + this.player1buffsButton.Enabled = false; } - if (partyMemberUpdateMethod(2)) + if (this.partyMemberUpdateMethod(2)) { - player2.Text = _FFACEMonitored.PartyMember[2].Name; - player2.Enabled = true; - player2optionsButton.Enabled = true; - player2buffsButton.Enabled = true; + this.player2.Text = this._ELITEAPIMonitored.Party.GetPartyMember(2).Name; + this.player2.Enabled = true; + this.player2optionsButton.Enabled = true; + this.player2buffsButton.Enabled = true; } else { - player2.Text = Resources.Form1_partyMembersUpdate_Tick_Inactive; - player2.Enabled = false; - player2HP.Value = 0; - player2optionsButton.Enabled = false; - player2buffsButton.Enabled = false; + this.player2.Text = Resources.Form1_partyMembersUpdate_Tick_Inactive; + this.player2.Enabled = false; + this.player2HP.Value = 0; + this.player2optionsButton.Enabled = false; + this.player2buffsButton.Enabled = false; } - if (partyMemberUpdateMethod(3)) + if (this.partyMemberUpdateMethod(3)) { - player3.Text = _FFACEMonitored.PartyMember[3].Name; - player3.Enabled = true; - player3optionsButton.Enabled = true; - player3buffsButton.Enabled = true; + this.player3.Text = this._ELITEAPIMonitored.Party.GetPartyMember(3).Name; + this.player3.Enabled = true; + this.player3optionsButton.Enabled = true; + this.player3buffsButton.Enabled = true; } else { - player3.Text = Resources.Form1_partyMembersUpdate_Tick_Inactive; - player3.Enabled = false; - player3HP.Value = 0; - player3optionsButton.Enabled = false; - player3buffsButton.Enabled = false; + this.player3.Text = Resources.Form1_partyMembersUpdate_Tick_Inactive; + this.player3.Enabled = false; + this.player3HP.Value = 0; + this.player3optionsButton.Enabled = false; + this.player3buffsButton.Enabled = false; } - if (partyMemberUpdateMethod(4)) + if (this.partyMemberUpdateMethod(4)) { - player4.Text = _FFACEMonitored.PartyMember[4].Name; - player4.Enabled = true; - player4optionsButton.Enabled = true; - player4buffsButton.Enabled = true; + this.player4.Text = this._ELITEAPIMonitored.Party.GetPartyMember(4).Name; + this.player4.Enabled = true; + this.player4optionsButton.Enabled = true; + this.player4buffsButton.Enabled = true; } else { - player4.Text = Resources.Form1_partyMembersUpdate_Tick_Inactive; - player4.Enabled = false; - player4HP.Value = 0; - player4optionsButton.Enabled = false; - player4buffsButton.Enabled = false; + this.player4.Text = Resources.Form1_partyMembersUpdate_Tick_Inactive; + this.player4.Enabled = false; + this.player4HP.Value = 0; + this.player4optionsButton.Enabled = false; + this.player4buffsButton.Enabled = false; } - if (partyMemberUpdateMethod(5)) + if (this.partyMemberUpdateMethod(5)) { - player5.Text = _FFACEMonitored.PartyMember[5].Name; - player5.Enabled = true; - player5optionsButton.Enabled = true; - player5buffsButton.Enabled = true; + this.player5.Text = this._ELITEAPIMonitored.Party.GetPartyMember(5).Name; + this.player5.Enabled = true; + this.player5optionsButton.Enabled = true; + this.player5buffsButton.Enabled = true; } else { - player5.Text = Resources.Form1_partyMembersUpdate_Tick_Inactive; - player5.Enabled = false; - player5HP.Value = 0; - player5optionsButton.Enabled = false; - player5buffsButton.Enabled = false; + this.player5.Text = Resources.Form1_partyMembersUpdate_Tick_Inactive; + this.player5.Enabled = false; + this.player5HP.Value = 0; + this.player5optionsButton.Enabled = false; + this.player5buffsButton.Enabled = false; } - if (partyMemberUpdateMethod(6)) + if (this.partyMemberUpdateMethod(6)) { - player6.Text = _FFACEMonitored.PartyMember[6].Name; - player6.Enabled = true; - player6optionsButton.Enabled = true; + this.player6.Text = this._ELITEAPIMonitored.Party.GetPartyMember(6).Name; + this.player6.Enabled = true; + this.player6optionsButton.Enabled = true; } else { - player6.Text = Resources.Form1_partyMembersUpdate_Tick_Inactive; - player6.Enabled = false; - player6HP.Value = 0; - player6optionsButton.Enabled = false; + this.player6.Text = Resources.Form1_partyMembersUpdate_Tick_Inactive; + this.player6.Enabled = false; + this.player6HP.Value = 0; + this.player6optionsButton.Enabled = false; } - if (partyMemberUpdateMethod(7)) + if (this.partyMemberUpdateMethod(7)) { - player7.Text = _FFACEMonitored.PartyMember[7].Name; - player7.Enabled = true; - player7optionsButton.Enabled = true; + this.player7.Text = this._ELITEAPIMonitored.Party.GetPartyMember(7).Name; + this.player7.Enabled = true; + this.player7optionsButton.Enabled = true; } else { - player7.Text = Resources.Form1_partyMembersUpdate_Tick_Inactive; - player7.Enabled = false; - player7HP.Value = 0; - player7optionsButton.Enabled = false; + this.player7.Text = Resources.Form1_partyMembersUpdate_Tick_Inactive; + this.player7.Enabled = false; + this.player7HP.Value = 0; + this.player7optionsButton.Enabled = false; } - if (partyMemberUpdateMethod(8)) + if (this.partyMemberUpdateMethod(8)) { - player8.Text = _FFACEMonitored.PartyMember[8].Name; - player8.Enabled = true; - player8optionsButton.Enabled = true; + this.player8.Text = this._ELITEAPIMonitored.Party.GetPartyMember(8).Name; + this.player8.Enabled = true; + this.player8optionsButton.Enabled = true; } else { - player8.Text = Resources.Form1_partyMembersUpdate_Tick_Inactive; - player8.Enabled = false; - player8HP.Value = 0; - player8optionsButton.Enabled = false; + this.player8.Text = Resources.Form1_partyMembersUpdate_Tick_Inactive; + this.player8.Enabled = false; + this.player8HP.Value = 0; + this.player8optionsButton.Enabled = false; } - if (partyMemberUpdateMethod(9)) + if (this.partyMemberUpdateMethod(9)) { - player9.Text = _FFACEMonitored.PartyMember[9].Name; - player9.Enabled = true; - player9optionsButton.Enabled = true; + this.player9.Text = this._ELITEAPIMonitored.Party.GetPartyMember(9).Name; + this.player9.Enabled = true; + this.player9optionsButton.Enabled = true; } else { - player9.Text = Resources.Form1_partyMembersUpdate_Tick_Inactive; - player9.Enabled = false; - player9HP.Value = 0; - player9optionsButton.Enabled = false; + this.player9.Text = Resources.Form1_partyMembersUpdate_Tick_Inactive; + this.player9.Enabled = false; + this.player9HP.Value = 0; + this.player9optionsButton.Enabled = false; } - if (partyMemberUpdateMethod(10)) + if (this.partyMemberUpdateMethod(10)) { - player10.Text = _FFACEMonitored.PartyMember[10].Name; - player10.Enabled = true; - player10optionsButton.Enabled = true; + this.player10.Text = this._ELITEAPIMonitored.Party.GetPartyMember(10).Name; + this.player10.Enabled = true; + this.player10optionsButton.Enabled = true; } else { - player10.Text = Resources.Form1_partyMembersUpdate_Tick_Inactive; - player10.Enabled = false; - player10HP.Value = 0; - player10optionsButton.Enabled = false; + this.player10.Text = Resources.Form1_partyMembersUpdate_Tick_Inactive; + this.player10.Enabled = false; + this.player10HP.Value = 0; + this.player10optionsButton.Enabled = false; } - if (partyMemberUpdateMethod(11)) + if (this.partyMemberUpdateMethod(11)) { - player11.Text = _FFACEMonitored.PartyMember[11].Name; - player11.Enabled = true; - player11optionsButton.Enabled = true; + this.player11.Text = this._ELITEAPIMonitored.Party.GetPartyMember(11).Name; + this.player11.Enabled = true; + this.player11optionsButton.Enabled = true; } else { - player11.Text = Resources.Form1_partyMembersUpdate_Tick_Inactive; - player11.Enabled = false; - player11HP.Value = 0; - player11optionsButton.Enabled = false; + this.player11.Text = Resources.Form1_partyMembersUpdate_Tick_Inactive; + this.player11.Enabled = false; + this.player11HP.Value = 0; + this.player11optionsButton.Enabled = false; } - if (partyMemberUpdateMethod(12)) + if (this.partyMemberUpdateMethod(12)) { - player12.Text = _FFACEMonitored.PartyMember[12].Name; - player12.Enabled = true; - player12optionsButton.Enabled = true; + this.player12.Text = this._ELITEAPIMonitored.Party.GetPartyMember(12).Name; + this.player12.Enabled = true; + this.player12optionsButton.Enabled = true; } else { - player12.Text = Resources.Form1_partyMembersUpdate_Tick_Inactive; - player12.Enabled = false; - player12HP.Value = 0; - player12optionsButton.Enabled = false; + this.player12.Text = Resources.Form1_partyMembersUpdate_Tick_Inactive; + this.player12.Enabled = false; + this.player12HP.Value = 0; + this.player12optionsButton.Enabled = false; } - if (partyMemberUpdateMethod(13)) + if (this.partyMemberUpdateMethod(13)) { - player13.Text = _FFACEMonitored.PartyMember[13].Name; - player13.Enabled = true; - player13optionsButton.Enabled = true; + this.player13.Text = this._ELITEAPIMonitored.Party.GetPartyMember(13).Name; + this.player13.Enabled = true; + this.player13optionsButton.Enabled = true; } else { - player13.Text = Resources.Form1_partyMembersUpdate_Tick_Inactive; - player13.Enabled = false; - player13HP.Value = 0; - player13optionsButton.Enabled = false; + this.player13.Text = Resources.Form1_partyMembersUpdate_Tick_Inactive; + this.player13.Enabled = false; + this.player13HP.Value = 0; + this.player13optionsButton.Enabled = false; } - if (partyMemberUpdateMethod(14)) + if (this.partyMemberUpdateMethod(14)) { - player14.Text = _FFACEMonitored.PartyMember[14].Name; - player14.Enabled = true; - player14optionsButton.Enabled = true; + this.player14.Text = this._ELITEAPIMonitored.Party.GetPartyMember(14).Name; + this.player14.Enabled = true; + this.player14optionsButton.Enabled = true; } else { - player14.Text = Resources.Form1_partyMembersUpdate_Tick_Inactive; - player14.Enabled = false; - player14HP.Value = 0; - player14optionsButton.Enabled = false; + this.player14.Text = Resources.Form1_partyMembersUpdate_Tick_Inactive; + this.player14.Enabled = false; + this.player14HP.Value = 0; + this.player14optionsButton.Enabled = false; } - if (partyMemberUpdateMethod(15)) + if (this.partyMemberUpdateMethod(15)) { - player15.Text = _FFACEMonitored.PartyMember[15].Name; - player15.Enabled = true; - player15optionsButton.Enabled = true; + this.player15.Text = this._ELITEAPIMonitored.Party.GetPartyMember(15).Name; + this.player15.Enabled = true; + this.player15optionsButton.Enabled = true; } else { - player15.Text = Resources.Form1_partyMembersUpdate_Tick_Inactive; - player15.Enabled = false; - player15HP.Value = 0; - player15optionsButton.Enabled = false; + this.player15.Text = Resources.Form1_partyMembersUpdate_Tick_Inactive; + this.player15.Enabled = false; + this.player15HP.Value = 0; + this.player15optionsButton.Enabled = false; } - if (partyMemberUpdateMethod(16)) + if (this.partyMemberUpdateMethod(16)) { - player16.Text = _FFACEMonitored.PartyMember[16].Name; - player16.Enabled = true; - player16optionsButton.Enabled = true; + this.player16.Text = this._ELITEAPIMonitored.Party.GetPartyMember(16).Name; + this.player16.Enabled = true; + this.player16optionsButton.Enabled = true; } else { - player16.Text = Resources.Form1_partyMembersUpdate_Tick_Inactive; - player16.Enabled = false; - player16HP.Value = 0; - player16optionsButton.Enabled = false; + this.player16.Text = Resources.Form1_partyMembersUpdate_Tick_Inactive; + this.player16.Enabled = false; + this.player16HP.Value = 0; + this.player16optionsButton.Enabled = false; } - if (partyMemberUpdateMethod(17)) + if (this.partyMemberUpdateMethod(17)) { - player17.Text = _FFACEMonitored.PartyMember[17].Name; - player17.Enabled = true; - player17optionsButton.Enabled = true; + this.player17.Text = this._ELITEAPIMonitored.Party.GetPartyMember(17).Name; + this.player17.Enabled = true; + this.player17optionsButton.Enabled = true; } else { - player17.Text = Resources.Form1_partyMembersUpdate_Tick_Inactive; - player17.Enabled = false; - player17HP.Value = 0; - player17optionsButton.Enabled = false; + this.player17.Text = Resources.Form1_partyMembersUpdate_Tick_Inactive; + this.player17.Enabled = false; + this.player17HP.Value = 0; + this.player17optionsButton.Enabled = false; } - + } - #endregion + #endregion #region "== hpUpdates" private void hpUpdates_Tick(object sender, EventArgs e) { - if (_FFACEPL == null || _FFACEMonitored == null) + if (_ELITEAPIPL == null || this._ELITEAPIMonitored == null) { return; } - if (_FFACEPL.Player.GetLoginStatus != LoginStatus.LoggedIn || _FFACEMonitored.Player.GetLoginStatus != LoginStatus.LoggedIn) + if (_ELITEAPIPL.Player.LoginStatus != (int)LoginStatus.LoggedIn || this._ELITEAPIMonitored.Player.LoginStatus != (int)LoginStatus.LoggedIn) { return; } - if (player0.Enabled) UpdateHPProgressBar(player0HP, _FFACEMonitored.PartyMember[0].HPPCurrent); - if (player0.Enabled) UpdateHPProgressBar(player0HP, _FFACEMonitored.PartyMember[0].HPPCurrent); - if (player1.Enabled) UpdateHPProgressBar(player1HP, _FFACEMonitored.PartyMember[1].HPPCurrent); - if (player2.Enabled) UpdateHPProgressBar(player2HP, _FFACEMonitored.PartyMember[2].HPPCurrent); - if (player3.Enabled) UpdateHPProgressBar(player3HP, _FFACEMonitored.PartyMember[3].HPPCurrent); - if (player4.Enabled) UpdateHPProgressBar(player4HP, _FFACEMonitored.PartyMember[4].HPPCurrent); - if (player5.Enabled) UpdateHPProgressBar(player5HP, _FFACEMonitored.PartyMember[5].HPPCurrent); - if (player6.Enabled) UpdateHPProgressBar(player6HP, _FFACEMonitored.PartyMember[6].HPPCurrent); - if (player7.Enabled) UpdateHPProgressBar(player7HP, _FFACEMonitored.PartyMember[7].HPPCurrent); - if (player8.Enabled) UpdateHPProgressBar(player8HP, _FFACEMonitored.PartyMember[8].HPPCurrent); - if (player9.Enabled) UpdateHPProgressBar(player9HP, _FFACEMonitored.PartyMember[9].HPPCurrent); - if (player10.Enabled) UpdateHPProgressBar(player10HP, _FFACEMonitored.PartyMember[10].HPPCurrent); - if (player11.Enabled) UpdateHPProgressBar(player11HP, _FFACEMonitored.PartyMember[11].HPPCurrent); - if (player12.Enabled) UpdateHPProgressBar(player12HP, _FFACEMonitored.PartyMember[12].HPPCurrent); - if (player13.Enabled) UpdateHPProgressBar(player13HP, _FFACEMonitored.PartyMember[13].HPPCurrent); - if (player14.Enabled) UpdateHPProgressBar(player14HP, _FFACEMonitored.PartyMember[14].HPPCurrent); - if (player15.Enabled) UpdateHPProgressBar(player15HP, _FFACEMonitored.PartyMember[15].HPPCurrent); - if (player16.Enabled) UpdateHPProgressBar(player16HP, _FFACEMonitored.PartyMember[16].HPPCurrent); - if (player17.Enabled) UpdateHPProgressBar(player17HP, _FFACEMonitored.PartyMember[17].HPPCurrent); - - label1.Text = _FFACEPL.Item.SelectedItemID.ToString() + ": " + _FFACEPL.Item.SelectedItemName; - + if (this.player0.Enabled) this.UpdateHPProgressBar(this.player0HP, this._ELITEAPIMonitored.Party.GetPartyMember(0).CurrentHPP); + if (this.player0.Enabled) this.UpdateHPProgressBar(this.player0HP, this._ELITEAPIMonitored.Party.GetPartyMember(0).CurrentHPP); + if (this.player1.Enabled) this.UpdateHPProgressBar(this.player1HP, this._ELITEAPIMonitored.Party.GetPartyMember(1).CurrentHPP); + if (this.player2.Enabled) this.UpdateHPProgressBar(this.player2HP, this._ELITEAPIMonitored.Party.GetPartyMember(2).CurrentHPP); + if (this.player3.Enabled) this.UpdateHPProgressBar(this.player3HP, this._ELITEAPIMonitored.Party.GetPartyMember(3).CurrentHPP); + if (this.player4.Enabled) this.UpdateHPProgressBar(this.player4HP, this._ELITEAPIMonitored.Party.GetPartyMember(4).CurrentHPP); + if (this.player5.Enabled) this.UpdateHPProgressBar(this.player5HP, this._ELITEAPIMonitored.Party.GetPartyMember(5).CurrentHPP); + if (this.player6.Enabled) this.UpdateHPProgressBar(this.player6HP, this._ELITEAPIMonitored.Party.GetPartyMember(6).CurrentHPP); + if (this.player7.Enabled) this.UpdateHPProgressBar(this.player7HP, this._ELITEAPIMonitored.Party.GetPartyMember(7).CurrentHPP); + if (this.player8.Enabled) this.UpdateHPProgressBar(this.player8HP, this._ELITEAPIMonitored.Party.GetPartyMember(8).CurrentHPP); + if (this.player9.Enabled) this.UpdateHPProgressBar(this.player9HP, this._ELITEAPIMonitored.Party.GetPartyMember(9).CurrentHPP); + if (this.player10.Enabled) this.UpdateHPProgressBar(this.player10HP, this._ELITEAPIMonitored.Party.GetPartyMember(10).CurrentHPP); + if (this.player11.Enabled) this.UpdateHPProgressBar(this.player11HP, this._ELITEAPIMonitored.Party.GetPartyMember(11).CurrentHPP); + if (this.player12.Enabled) this.UpdateHPProgressBar(this.player12HP, this._ELITEAPIMonitored.Party.GetPartyMember(12).CurrentHPP); + if (this.player13.Enabled) this.UpdateHPProgressBar(this.player13HP, this._ELITEAPIMonitored.Party.GetPartyMember(13).CurrentHPP); + if (this.player14.Enabled) this.UpdateHPProgressBar(this.player14HP, this._ELITEAPIMonitored.Party.GetPartyMember(14).CurrentHPP); + if (this.player15.Enabled) this.UpdateHPProgressBar(this.player15HP, this._ELITEAPIMonitored.Party.GetPartyMember(15).CurrentHPP); + if (this.player16.Enabled) this.UpdateHPProgressBar(this.player16HP, this._ELITEAPIMonitored.Party.GetPartyMember(16).CurrentHPP); + if (this.player17.Enabled) this.UpdateHPProgressBar(this.player17HP, this._ELITEAPIMonitored.Party.GetPartyMember(17).CurrentHPP); + + this.label1.Text = _ELITEAPIPL.Inventory.SelectedItemId + ": " + _ELITEAPIPL.Inventory.SelectedItemName; } #endregion #region "== UpdateHPProgressBar" - private void UpdateHPProgressBar(NewProgressBar playerHP, int hppCurrent) + private void UpdateHPProgressBar(NewProgressBar playerHP, int CurrentHPP) { - playerHP.Value = hppCurrent; - if (hppCurrent >= 75) + playerHP.Value = CurrentHPP; + if (CurrentHPP >= 75) playerHP.ForeColor = Color.Green; - else if (hppCurrent > 50 && hppCurrent < 75) + else if (CurrentHPP > 50 && CurrentHPP < 75) playerHP.ForeColor = Color.Yellow; - else if (hppCurrent > 25 && hppCurrent < 50) + else if (CurrentHPP > 25 && CurrentHPP < 50) playerHP.ForeColor = Color.Orange; - else if (hppCurrent < 25) + else if (CurrentHPP < 25) playerHP.ForeColor = Color.Red; } #endregion @@ -1206,74 +2315,74 @@ private void UpdateHPProgressBar(NewProgressBar playerHP, int hppCurrent) #region "== plPosition (Power Levelers Position)" private void plPosition_Tick(object sender, EventArgs e) { - if (_FFACEPL == null || _FFACEMonitored == null) + if (_ELITEAPIPL == null || this._ELITEAPIMonitored == null) { return; } - if (_FFACEPL.Player.GetLoginStatus != LoginStatus.LoggedIn || _FFACEMonitored.Player.GetLoginStatus != LoginStatus.LoggedIn) + if (_ELITEAPIPL.Player.LoginStatus != (int)LoginStatus.LoggedIn || this._ELITEAPIMonitored.Player.LoginStatus != (int)LoginStatus.LoggedIn) { return; } - plX = _FFACEPL.Player.PosX; - plY = _FFACEPL.Player.PosY; - plZ = _FFACEPL.Player.PosZ; + this.plX = _ELITEAPIPL.Player.X; + this.plY = _ELITEAPIPL.Player.Y; + this.plZ = _ELITEAPIPL.Player.Z; } #endregion #region "== CastLock" private void CastLockMethod() { - castingLock = true; - castingLockLabel.Text = "Casting is LOCKED"; - castingLockTimer.Enabled = true; - actionTimer.Enabled = false; + this.castingLock = true; + this.castingLockLabel.Text = "Casting is LOCKED"; + this.castingLockTimer.Enabled = true; + this.actionTimer.Enabled = false; } #endregion #region "== ActionLock" private void ActionLockMethod() { - castingLock = true; - castingLockLabel.Text = "Casting is LOCKED"; - actionUnlockTimer.Enabled = true; - actionTimer.Enabled = false; + this.castingLock = true; + this.castingLockLabel.Text = "Casting is LOCKED"; + this.actionUnlockTimer.Enabled = true; + this.actionTimer.Enabled = false; } #endregion #region "== CureCalculator" private void CureCalculator(byte partyMemberId) { - if ((Settings.Default.cure6enabled) && ((((_FFACEMonitored.PartyMember[partyMemberId].HPCurrent * 100) / _FFACEMonitored.PartyMember[partyMemberId].HPPCurrent) - _FFACEMonitored.PartyMember[partyMemberId].HPCurrent) >= Settings.Default.cure6amount) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Cure_VI) == 0) && (_FFACEPL.Player.MPCurrent > 227)) + if ((Settings.Default.cure6enabled) && ((((this._ELITEAPIMonitored.Party.GetPartyMembers()[partyMemberId].CurrentHP * 100) / this._ELITEAPIMonitored.Party.GetPartyMembers()[partyMemberId].CurrentHPP) - this._ELITEAPIMonitored.Party.GetPartyMembers()[partyMemberId].CurrentHP) >= Settings.Default.cure6amount) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Cure_VI) == 0) && (_ELITEAPIPL.Player.MP > 227)) { - _FFACEPL.Windower.SendString("/ma \"Cure VI\" " + _FFACEMonitored.PartyMember[partyMemberId].Name); - CastLockMethod(); + _ELITEAPIPL.ThirdParty.SendString("/ma \"Cure VI\" " + this._ELITEAPIMonitored.Party.GetPartyMembers()[partyMemberId].Name); + this.CastLockMethod(); } - else if ((Settings.Default.cure5enabled) && ((((_FFACEMonitored.PartyMember[partyMemberId].HPCurrent * 100) / _FFACEMonitored.PartyMember[partyMemberId].HPPCurrent) - _FFACEMonitored.PartyMember[partyMemberId].HPCurrent) >= Settings.Default.cure5amount) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Cure_V) == 0) && (_FFACEPL.Player.MPCurrent > 125)) + else if ((Settings.Default.cure5enabled) && ((((this._ELITEAPIMonitored.Party.GetPartyMembers()[partyMemberId].CurrentHP * 100) / this._ELITEAPIMonitored.Party.GetPartyMembers()[partyMemberId].CurrentHPP) - this._ELITEAPIMonitored.Party.GetPartyMembers()[partyMemberId].CurrentHP) >= Settings.Default.cure5amount) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Cure_V) == 0) && (_ELITEAPIPL.Player.MP > 125)) { - _FFACEPL.Windower.SendString("/ma \"Cure V\" " + _FFACEMonitored.PartyMember[partyMemberId].Name); - CastLockMethod(); + _ELITEAPIPL.ThirdParty.SendString("/ma \"Cure V\" " + this._ELITEAPIMonitored.Party.GetPartyMembers()[partyMemberId].Name); + this.CastLockMethod(); } - else if ((Settings.Default.cure4enabled) && ((((_FFACEMonitored.PartyMember[partyMemberId].HPCurrent * 100) / _FFACEMonitored.PartyMember[partyMemberId].HPPCurrent) - _FFACEMonitored.PartyMember[partyMemberId].HPCurrent) >= Settings.Default.cure4amount) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Cure_IV) == 0) && (_FFACEPL.Player.MPCurrent > 88)) + else if ((Settings.Default.cure4enabled) && ((((this._ELITEAPIMonitored.Party.GetPartyMembers()[partyMemberId].CurrentHP * 100) / this._ELITEAPIMonitored.Party.GetPartyMembers()[partyMemberId].CurrentHPP) - this._ELITEAPIMonitored.Party.GetPartyMembers()[partyMemberId].CurrentHP) >= Settings.Default.cure4amount) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Cure_IV) == 0) && (_ELITEAPIPL.Player.MP > 88)) { - _FFACEPL.Windower.SendString("/ma \"Cure IV\" " + _FFACEMonitored.PartyMember[partyMemberId].Name); - CastLockMethod(); + _ELITEAPIPL.ThirdParty.SendString("/ma \"Cure IV\" " + this._ELITEAPIMonitored.Party.GetPartyMembers()[partyMemberId].Name); + this.CastLockMethod(); } - else if ((Settings.Default.cure3enabled) && ((((_FFACEMonitored.PartyMember[partyMemberId].HPCurrent * 100) / _FFACEMonitored.PartyMember[partyMemberId].HPPCurrent) - _FFACEMonitored.PartyMember[partyMemberId].HPCurrent) >= Settings.Default.cure3amount) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Cure_III) == 0) && (_FFACEPL.Player.MPCurrent > 46)) + else if ((Settings.Default.cure3enabled) && ((((this._ELITEAPIMonitored.Party.GetPartyMembers()[partyMemberId].CurrentHP * 100) / this._ELITEAPIMonitored.Party.GetPartyMembers()[partyMemberId].CurrentHPP) - this._ELITEAPIMonitored.Party.GetPartyMembers()[partyMemberId].CurrentHP) >= Settings.Default.cure3amount) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Cure_III) == 0) && (_ELITEAPIPL.Player.MP > 46)) { - _FFACEPL.Windower.SendString("/ma \"Cure III\" " + _FFACEMonitored.PartyMember[partyMemberId].Name); - CastLockMethod(); + _ELITEAPIPL.ThirdParty.SendString("/ma \"Cure III\" " + this._ELITEAPIMonitored.Party.GetPartyMembers()[partyMemberId].Name); + this.CastLockMethod(); } - else if ((Settings.Default.cure2enabled) && ((((_FFACEMonitored.PartyMember[partyMemberId].HPCurrent * 100) / _FFACEMonitored.PartyMember[partyMemberId].HPPCurrent) - _FFACEMonitored.PartyMember[partyMemberId].HPCurrent) >= Settings.Default.cure2amount) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Cure_II) == 0) && (_FFACEPL.Player.MPCurrent > 24)) + else if ((Settings.Default.cure2enabled) && ((((this._ELITEAPIMonitored.Party.GetPartyMembers()[partyMemberId].CurrentHP * 100) / this._ELITEAPIMonitored.Party.GetPartyMembers()[partyMemberId].CurrentHPP) - this._ELITEAPIMonitored.Party.GetPartyMembers()[partyMemberId].CurrentHP) >= Settings.Default.cure2amount) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Cure_II) == 0) && (_ELITEAPIPL.Player.MP > 24)) { - _FFACEPL.Windower.SendString("/ma \"Cure II\" " + _FFACEMonitored.PartyMember[partyMemberId].Name); - CastLockMethod(); + _ELITEAPIPL.ThirdParty.SendString("/ma \"Cure II\" " + this._ELITEAPIMonitored.Party.GetPartyMembers()[partyMemberId].Name); + this.CastLockMethod(); } - else if ((Settings.Default.cure1enabled) && ((((_FFACEMonitored.PartyMember[partyMemberId].HPCurrent * 100) / _FFACEMonitored.PartyMember[partyMemberId].HPPCurrent) - _FFACEMonitored.PartyMember[partyMemberId].HPCurrent) >= Settings.Default.cure1amount) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Cure) == 0) && (_FFACEPL.Player.MPCurrent > 8)) + else if ((Settings.Default.cure1enabled) && ((((this._ELITEAPIMonitored.Party.GetPartyMembers()[partyMemberId].CurrentHP * 100) / this._ELITEAPIMonitored.Party.GetPartyMembers()[partyMemberId].CurrentHPP) - this._ELITEAPIMonitored.Party.GetPartyMembers()[partyMemberId].CurrentHP) >= Settings.Default.cure1amount) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Cure) == 0) && (_ELITEAPIPL.Player.MP > 8)) { - _FFACEPL.Windower.SendString("/ma \"Cure\" " + _FFACEMonitored.PartyMember[partyMemberId].Name); - CastLockMethod(); + _ELITEAPIPL.ThirdParty.SendString("/ma \"Cure\" " + this._ELITEAPIMonitored.Party.GetPartyMembers()[partyMemberId].Name); + this.CastLockMethod(); } } #endregion @@ -1281,7 +2390,7 @@ private void CureCalculator(byte partyMemberId) #region "== CastingPossible (Distance)" private bool castingPossible(byte partyMemberId) { - if ((_FFACEPL.NPC.Distance(_FFACEMonitored.PartyMember[partyMemberId].ID) < 21) && (_FFACEPL.NPC.Distance(_FFACEMonitored.PartyMember[partyMemberId].ID) > 0) && (_FFACEMonitored.PartyMember[partyMemberId].HPCurrent > 0) || (_FFACEPL.Player.ID == _FFACEMonitored.PartyMember[partyMemberId].ID) && (_FFACEMonitored.PartyMember[partyMemberId].HPCurrent > 0)) + if ((_ELITEAPIPL.Entity.GetEntity((int)this._ELITEAPIMonitored.Party.GetPartyMembers()[partyMemberId].ID).Distance < 21) && (_ELITEAPIPL.Entity.GetEntity((int)this._ELITEAPIMonitored.Party.GetPartyMembers()[partyMemberId].ID).Distance > 0) && (this._ELITEAPIMonitored.Party.GetPartyMembers()[partyMemberId].CurrentHP > 0) || (_ELITEAPIPL.Party.GetPartyMember(0).ID == this._ELITEAPIMonitored.Party.GetPartyMembers()[partyMemberId].ID) && (this._ELITEAPIMonitored.Party.GetPartyMembers()[partyMemberId].CurrentHP > 0)) { return true; } @@ -1292,26 +2401,20 @@ private bool castingPossible(byte partyMemberId) #region "== PL and Monitored StatusCheck" private bool plStatusCheck(StatusEffect requestedStatus) { - bool statusFound = false; - foreach (StatusEffect status in _FFACEPL.Player.StatusEffects) + var statusFound = false; + foreach (StatusEffect status in _ELITEAPIPL.Player.Buffs.Cast().Where(status => requestedStatus == status)) { - if (requestedStatus == status) - { - statusFound = true; - } + statusFound = true; } return statusFound; } private bool monitoredStatusCheck(StatusEffect requestedStatus) { - bool statusFound = false; - foreach (StatusEffect status in _FFACEMonitored.Player.StatusEffects) + var statusFound = false; + foreach (var status in this._ELITEAPIMonitored.Player.Buffs.Cast().Where(status => requestedStatus == status)) { - if (requestedStatus == status) - { - statusFound = true; - } + statusFound = true; } return statusFound; } @@ -1320,423 +2423,423 @@ private bool monitoredStatusCheck(StatusEffect requestedStatus) #region "== partyMember Spell Casting (Auto Spells) private void castSpell(string partyMemberName, string spellName) { - CastLockMethod(); - _FFACEPL.Windower.SendString("/ma \"" + spellName + "\" " + partyMemberName); + this.CastLockMethod(); + _ELITEAPIPL.ThirdParty.SendString("/ma \"" + spellName + "\" " + partyMemberName); } private void hastePlayer(byte partyMemberId) { - CastLockMethod(); - _FFACEPL.Windower.SendString("/ma \"Haste\" " + _FFACEMonitored.PartyMember[partyMemberId].Name); - playerHaste[partyMemberId] = DateTime.Now; + this.CastLockMethod(); + _ELITEAPIPL.ThirdParty.SendString("/ma \"Haste\" " + this._ELITEAPIMonitored.Party.GetPartyMembers()[partyMemberId].Name); + this.playerHaste[partyMemberId] = DateTime.Now; } private void haste_IIPlayer(byte partyMemberId) { - CastLockMethod(); - _FFACEPL.Windower.SendString("/ma \"Haste II\" " + _FFACEMonitored.PartyMember[partyMemberId].Name); - playerHaste_II[partyMemberId] = DateTime.Now; + this.CastLockMethod(); + _ELITEAPIPL.ThirdParty.SendString("/ma \"Haste II\" " + this._ELITEAPIMonitored.Party.GetPartyMembers()[partyMemberId].Name); + this.playerHaste_II[partyMemberId] = DateTime.Now; } private void FlurryPlayer(byte partyMemberId) { - CastLockMethod(); - _FFACEPL.Windower.SendString("/ma \"Flurry\" " + _FFACEMonitored.PartyMember[partyMemberId].Name); - playerFlurry[partyMemberId] = DateTime.Now; + this.CastLockMethod(); + _ELITEAPIPL.ThirdParty.SendString("/ma \"Flurry\" " + this._ELITEAPIMonitored.Party.GetPartyMembers()[partyMemberId].Name); + this.playerFlurry[partyMemberId] = DateTime.Now; } private void Flurry_IIPlayer(byte partyMemberId) { - CastLockMethod(); - _FFACEPL.Windower.SendString("/ma \"Flurry II\" " + _FFACEMonitored.PartyMember[partyMemberId].Name); - playerFlurry_II[partyMemberId] = DateTime.Now; + this.CastLockMethod(); + _ELITEAPIPL.ThirdParty.SendString("/ma \"Flurry II\" " + this._ELITEAPIMonitored.Party.GetPartyMembers()[partyMemberId].Name); + this.playerFlurry_II[partyMemberId] = DateTime.Now; } private void Phalanx_IIPlayer(byte partyMemberId) { - CastLockMethod(); - _FFACEPL.Windower.SendString("/ma \"Phalanx II\" " + _FFACEMonitored.PartyMember[partyMemberId].Name); - playerPhalanx_II[partyMemberId] = DateTime.Now; + this.CastLockMethod(); + _ELITEAPIPL.ThirdParty.SendString("/ma \"Phalanx II\" " + this._ELITEAPIMonitored.Party.GetPartyMembers()[partyMemberId].Name); + this.playerPhalanx_II[partyMemberId] = DateTime.Now; } private void Regen_IVPlayer(byte partyMemberId) { - CastLockMethod(); - _FFACEPL.Windower.SendString("/ma \"Regen IV\" " + _FFACEMonitored.PartyMember[partyMemberId].Name); - playerRegen_IV[partyMemberId] = DateTime.Now; + this.CastLockMethod(); + _ELITEAPIPL.ThirdParty.SendString("/ma \"Regen IV\" " + this._ELITEAPIMonitored.Party.GetPartyMembers()[partyMemberId].Name); + this.playerRegen_IV[partyMemberId] = DateTime.Now; } private void Regen_VPlayer(byte partyMemberId) { - CastLockMethod(); - _FFACEPL.Windower.SendString("/ma \"Regen V\" " + _FFACEMonitored.PartyMember[partyMemberId].Name); - playerRegen_V[partyMemberId] = DateTime.Now; + this.CastLockMethod(); + _ELITEAPIPL.ThirdParty.SendString("/ma \"Regen V\" " + this._ELITEAPIMonitored.Party.GetPartyMembers()[partyMemberId].Name); + this.playerRegen_V[partyMemberId] = DateTime.Now; } private void RefreshPlayer(byte partyMemberId) { - CastLockMethod(); - _FFACEPL.Windower.SendString("/ma \"Refresh\" " + _FFACEMonitored.PartyMember[partyMemberId].Name); - playerRefresh[partyMemberId] = DateTime.Now; + this.CastLockMethod(); + _ELITEAPIPL.ThirdParty.SendString("/ma \"Refresh\" " + this._ELITEAPIMonitored.Party.GetPartyMembers()[partyMemberId].Name); + this.playerRefresh[partyMemberId] = DateTime.Now; } private void Refresh_IIPlayer(byte partyMemberId) { - CastLockMethod(); - _FFACEPL.Windower.SendString("/ma \"Refresh II\" " + _FFACEMonitored.PartyMember[partyMemberId].Name); - playerRefresh_II[partyMemberId] = DateTime.Now; + this.CastLockMethod(); + _ELITEAPIPL.ThirdParty.SendString("/ma \"Refresh II\" " + this._ELITEAPIMonitored.Party.GetPartyMembers()[partyMemberId].Name); + this.playerRefresh_II[partyMemberId] = DateTime.Now; } private void protect_IVPlayer(byte partyMemberId) { - CastLockMethod(); - _FFACEPL.Windower.SendString("/ma \"Protect IV\" " + _FFACEMonitored.PartyMember[partyMemberId].Name); - playerProtect_IV[partyMemberId] = DateTime.Now; + this.CastLockMethod(); + _ELITEAPIPL.ThirdParty.SendString("/ma \"Protect IV\" " + this._ELITEAPIMonitored.Party.GetPartyMembers()[partyMemberId].Name); + this.playerProtect_IV[partyMemberId] = DateTime.Now; } private void protect_VPlayer(byte partyMemberId) { - CastLockMethod(); - _FFACEPL.Windower.SendString("/ma \"Protect V\" " + _FFACEMonitored.PartyMember[partyMemberId].Name); - playerProtect_V[partyMemberId] = DateTime.Now; + this.CastLockMethod(); + _ELITEAPIPL.ThirdParty.SendString("/ma \"Protect V\" " + this._ELITEAPIMonitored.Party.GetPartyMembers()[partyMemberId].Name); + this.playerProtect_V[partyMemberId] = DateTime.Now; } private void shell_IVPlayer(byte partyMemberId) { - CastLockMethod(); - _FFACEPL.Windower.SendString("/ma \"Shell IV\" " + _FFACEMonitored.PartyMember[partyMemberId].Name); - playerShell_IV[partyMemberId] = DateTime.Now; + this.CastLockMethod(); + _ELITEAPIPL.ThirdParty.SendString("/ma \"Shell IV\" " + this._ELITEAPIMonitored.Party.GetPartyMembers()[partyMemberId].Name); + this.playerShell_IV[partyMemberId] = DateTime.Now; } private void shell_VPlayer(byte partyMemberId) { - CastLockMethod(); - _FFACEPL.Windower.SendString("/ma \"Shell V\" " + _FFACEMonitored.PartyMember[partyMemberId].Name); - playerShell_V[partyMemberId] = DateTime.Now; + this.CastLockMethod(); + _ELITEAPIPL.ThirdParty.SendString("/ma \"Shell V\" " + this._ELITEAPIMonitored.Party.GetPartyMembers()[partyMemberId].Name); + this.playerShell_V[partyMemberId] = DateTime.Now; } #endregion - + #region "== actionTimer (LoginStatus)" private void actionTimer_Tick(object sender, EventArgs e) { - if (_FFACEPL == null || _FFACEMonitored == null) + if (_ELITEAPIPL == null || this._ELITEAPIMonitored == null) { return; } - if (_FFACEPL.Player.GetLoginStatus != LoginStatus.LoggedIn || _FFACEMonitored.Player.GetLoginStatus != LoginStatus.LoggedIn) + if (_ELITEAPIPL.Player.LoginStatus != (int)LoginStatus.LoggedIn || this._ELITEAPIMonitored.Player.LoginStatus != (int)LoginStatus.LoggedIn) { return; } - if (_FFACEPL.Player.GetLoginStatus == LoginStatus.Loading || _FFACEMonitored.Player.GetLoginStatus == LoginStatus.Loading) + if (_ELITEAPIPL.Player.LoginStatus == (int)LoginStatus.Loading || this._ELITEAPIMonitored.Player.LoginStatus == (int)LoginStatus.Loading) { // We zoned out so wait 15 seconds before continuing any type of action Thread.Sleep(15000); } - #endregion + #endregion + + // Grab current time for calculations below + #region "== Calculate time since an Auto Spell was cast on particular player" - // Grab current time for calculations below - #region "== Calculate time since an Auto Spell was cast on particular player" - currentTime = DateTime.Now; + this.currentTime = DateTime.Now; // Calculate time since haste was cast on particular player - playerHasteSpan[0] = currentTime.Subtract(playerHaste[0]); - playerHasteSpan[1] = currentTime.Subtract(playerHaste[1]); - playerHasteSpan[2] = currentTime.Subtract(playerHaste[2]); - playerHasteSpan[3] = currentTime.Subtract(playerHaste[3]); - playerHasteSpan[4] = currentTime.Subtract(playerHaste[4]); - playerHasteSpan[5] = currentTime.Subtract(playerHaste[5]); - playerHasteSpan[6] = currentTime.Subtract(playerHaste[6]); - playerHasteSpan[7] = currentTime.Subtract(playerHaste[7]); - playerHasteSpan[8] = currentTime.Subtract(playerHaste[8]); - playerHasteSpan[9] = currentTime.Subtract(playerHaste[9]); - playerHasteSpan[10] = currentTime.Subtract(playerHaste[10]); - playerHasteSpan[11] = currentTime.Subtract(playerHaste[11]); - playerHasteSpan[12] = currentTime.Subtract(playerHaste[12]); - playerHasteSpan[13] = currentTime.Subtract(playerHaste[13]); - playerHasteSpan[14] = currentTime.Subtract(playerHaste[14]); - playerHasteSpan[15] = currentTime.Subtract(playerHaste[15]); - playerHasteSpan[16] = currentTime.Subtract(playerHaste[16]); - playerHasteSpan[17] = currentTime.Subtract(playerHaste[17]); - - playerHaste_IISpan[0] = currentTime.Subtract(playerHaste_II[0]); - playerHaste_IISpan[1] = currentTime.Subtract(playerHaste_II[1]); - playerHaste_IISpan[2] = currentTime.Subtract(playerHaste_II[2]); - playerHaste_IISpan[3] = currentTime.Subtract(playerHaste_II[3]); - playerHaste_IISpan[4] = currentTime.Subtract(playerHaste_II[4]); - playerHaste_IISpan[5] = currentTime.Subtract(playerHaste_II[5]); - playerHaste_IISpan[6] = currentTime.Subtract(playerHaste_II[6]); - playerHaste_IISpan[7] = currentTime.Subtract(playerHaste_II[7]); - playerHaste_IISpan[8] = currentTime.Subtract(playerHaste_II[8]); - playerHaste_IISpan[9] = currentTime.Subtract(playerHaste_II[9]); - playerHaste_IISpan[10] = currentTime.Subtract(playerHaste_II[10]); - playerHaste_IISpan[11] = currentTime.Subtract(playerHaste_II[11]); - playerHaste_IISpan[12] = currentTime.Subtract(playerHaste_II[12]); - playerHaste_IISpan[13] = currentTime.Subtract(playerHaste_II[13]); - playerHaste_IISpan[14] = currentTime.Subtract(playerHaste_II[14]); - playerHaste_IISpan[15] = currentTime.Subtract(playerHaste_II[15]); - playerHaste_IISpan[16] = currentTime.Subtract(playerHaste_II[16]); - playerHaste_IISpan[17] = currentTime.Subtract(playerHaste_II[17]); - - playerFlurrySpan[0] = currentTime.Subtract(playerFlurry[0]); - playerFlurrySpan[1] = currentTime.Subtract(playerFlurry[1]); - playerFlurrySpan[2] = currentTime.Subtract(playerFlurry[2]); - playerFlurrySpan[3] = currentTime.Subtract(playerFlurry[3]); - playerFlurrySpan[4] = currentTime.Subtract(playerFlurry[4]); - playerFlurrySpan[5] = currentTime.Subtract(playerFlurry[5]); - playerFlurrySpan[6] = currentTime.Subtract(playerFlurry[6]); - playerFlurrySpan[7] = currentTime.Subtract(playerFlurry[7]); - playerFlurrySpan[8] = currentTime.Subtract(playerFlurry[8]); - playerFlurrySpan[9] = currentTime.Subtract(playerFlurry[9]); - playerFlurrySpan[10] = currentTime.Subtract(playerFlurry[10]); - playerFlurrySpan[11] = currentTime.Subtract(playerFlurry[11]); - playerFlurrySpan[12] = currentTime.Subtract(playerFlurry[12]); - playerFlurrySpan[13] = currentTime.Subtract(playerFlurry[13]); - playerFlurrySpan[14] = currentTime.Subtract(playerFlurry[14]); - playerFlurrySpan[15] = currentTime.Subtract(playerFlurry[15]); - playerFlurrySpan[16] = currentTime.Subtract(playerFlurry[16]); - playerFlurrySpan[17] = currentTime.Subtract(playerFlurry[17]); - - playerFlurry_IISpan[0] = currentTime.Subtract(playerFlurry_II[0]); - playerFlurry_IISpan[1] = currentTime.Subtract(playerFlurry_II[1]); - playerFlurry_IISpan[2] = currentTime.Subtract(playerFlurry_II[2]); - playerFlurry_IISpan[3] = currentTime.Subtract(playerFlurry_II[3]); - playerFlurry_IISpan[4] = currentTime.Subtract(playerFlurry_II[4]); - playerFlurry_IISpan[5] = currentTime.Subtract(playerFlurry_II[5]); - playerFlurry_IISpan[6] = currentTime.Subtract(playerFlurry_II[6]); - playerFlurry_IISpan[7] = currentTime.Subtract(playerFlurry_II[7]); - playerFlurry_IISpan[8] = currentTime.Subtract(playerFlurry_II[8]); - playerFlurry_IISpan[9] = currentTime.Subtract(playerFlurry_II[9]); - playerFlurry_IISpan[10] = currentTime.Subtract(playerFlurry_II[10]); - playerFlurry_IISpan[11] = currentTime.Subtract(playerFlurry_II[11]); - playerFlurry_IISpan[12] = currentTime.Subtract(playerFlurry_II[12]); - playerFlurry_IISpan[13] = currentTime.Subtract(playerFlurry_II[13]); - playerFlurry_IISpan[14] = currentTime.Subtract(playerFlurry_II[14]); - playerFlurry_IISpan[15] = currentTime.Subtract(playerFlurry_II[15]); - playerFlurry_IISpan[16] = currentTime.Subtract(playerFlurry_II[16]); - playerFlurry_IISpan[17] = currentTime.Subtract(playerFlurry_II[17]); + this.playerHasteSpan[0] = this.currentTime.Subtract(this.playerHaste[0]); + this.playerHasteSpan[1] = this.currentTime.Subtract(this.playerHaste[1]); + this.playerHasteSpan[2] = this.currentTime.Subtract(this.playerHaste[2]); + this.playerHasteSpan[3] = this.currentTime.Subtract(this.playerHaste[3]); + this.playerHasteSpan[4] = this.currentTime.Subtract(this.playerHaste[4]); + this.playerHasteSpan[5] = this.currentTime.Subtract(this.playerHaste[5]); + this.playerHasteSpan[6] = this.currentTime.Subtract(this.playerHaste[6]); + this.playerHasteSpan[7] = this.currentTime.Subtract(this.playerHaste[7]); + this.playerHasteSpan[8] = this.currentTime.Subtract(this.playerHaste[8]); + this.playerHasteSpan[9] = this.currentTime.Subtract(this.playerHaste[9]); + this.playerHasteSpan[10] = this.currentTime.Subtract(this.playerHaste[10]); + this.playerHasteSpan[11] = this.currentTime.Subtract(this.playerHaste[11]); + this.playerHasteSpan[12] = this.currentTime.Subtract(this.playerHaste[12]); + this.playerHasteSpan[13] = this.currentTime.Subtract(this.playerHaste[13]); + this.playerHasteSpan[14] = this.currentTime.Subtract(this.playerHaste[14]); + this.playerHasteSpan[15] = this.currentTime.Subtract(this.playerHaste[15]); + this.playerHasteSpan[16] = this.currentTime.Subtract(this.playerHaste[16]); + this.playerHasteSpan[17] = this.currentTime.Subtract(this.playerHaste[17]); + + this.playerHaste_IISpan[0] = this.currentTime.Subtract(this.playerHaste_II[0]); + this.playerHaste_IISpan[1] = this.currentTime.Subtract(this.playerHaste_II[1]); + this.playerHaste_IISpan[2] = this.currentTime.Subtract(this.playerHaste_II[2]); + this.playerHaste_IISpan[3] = this.currentTime.Subtract(this.playerHaste_II[3]); + this.playerHaste_IISpan[4] = this.currentTime.Subtract(this.playerHaste_II[4]); + this.playerHaste_IISpan[5] = this.currentTime.Subtract(this.playerHaste_II[5]); + this.playerHaste_IISpan[6] = this.currentTime.Subtract(this.playerHaste_II[6]); + this.playerHaste_IISpan[7] = this.currentTime.Subtract(this.playerHaste_II[7]); + this.playerHaste_IISpan[8] = this.currentTime.Subtract(this.playerHaste_II[8]); + this.playerHaste_IISpan[9] = this.currentTime.Subtract(this.playerHaste_II[9]); + this.playerHaste_IISpan[10] = this.currentTime.Subtract(this.playerHaste_II[10]); + this.playerHaste_IISpan[11] = this.currentTime.Subtract(this.playerHaste_II[11]); + this.playerHaste_IISpan[12] = this.currentTime.Subtract(this.playerHaste_II[12]); + this.playerHaste_IISpan[13] = this.currentTime.Subtract(this.playerHaste_II[13]); + this.playerHaste_IISpan[14] = this.currentTime.Subtract(this.playerHaste_II[14]); + this.playerHaste_IISpan[15] = this.currentTime.Subtract(this.playerHaste_II[15]); + this.playerHaste_IISpan[16] = this.currentTime.Subtract(this.playerHaste_II[16]); + this.playerHaste_IISpan[17] = this.currentTime.Subtract(this.playerHaste_II[17]); + + this.playerFlurrySpan[0] = this.currentTime.Subtract(this.playerFlurry[0]); + this.playerFlurrySpan[1] = this.currentTime.Subtract(this.playerFlurry[1]); + this.playerFlurrySpan[2] = this.currentTime.Subtract(this.playerFlurry[2]); + this.playerFlurrySpan[3] = this.currentTime.Subtract(this.playerFlurry[3]); + this.playerFlurrySpan[4] = this.currentTime.Subtract(this.playerFlurry[4]); + this.playerFlurrySpan[5] = this.currentTime.Subtract(this.playerFlurry[5]); + this.playerFlurrySpan[6] = this.currentTime.Subtract(this.playerFlurry[6]); + this.playerFlurrySpan[7] = this.currentTime.Subtract(this.playerFlurry[7]); + this.playerFlurrySpan[8] = this.currentTime.Subtract(this.playerFlurry[8]); + this.playerFlurrySpan[9] = this.currentTime.Subtract(this.playerFlurry[9]); + this.playerFlurrySpan[10] = this.currentTime.Subtract(this.playerFlurry[10]); + this.playerFlurrySpan[11] = this.currentTime.Subtract(this.playerFlurry[11]); + this.playerFlurrySpan[12] = this.currentTime.Subtract(this.playerFlurry[12]); + this.playerFlurrySpan[13] = this.currentTime.Subtract(this.playerFlurry[13]); + this.playerFlurrySpan[14] = this.currentTime.Subtract(this.playerFlurry[14]); + this.playerFlurrySpan[15] = this.currentTime.Subtract(this.playerFlurry[15]); + this.playerFlurrySpan[16] = this.currentTime.Subtract(this.playerFlurry[16]); + this.playerFlurrySpan[17] = this.currentTime.Subtract(this.playerFlurry[17]); + + this.playerFlurry_IISpan[0] = this.currentTime.Subtract(this.playerFlurry_II[0]); + this.playerFlurry_IISpan[1] = this.currentTime.Subtract(this.playerFlurry_II[1]); + this.playerFlurry_IISpan[2] = this.currentTime.Subtract(this.playerFlurry_II[2]); + this.playerFlurry_IISpan[3] = this.currentTime.Subtract(this.playerFlurry_II[3]); + this.playerFlurry_IISpan[4] = this.currentTime.Subtract(this.playerFlurry_II[4]); + this.playerFlurry_IISpan[5] = this.currentTime.Subtract(this.playerFlurry_II[5]); + this.playerFlurry_IISpan[6] = this.currentTime.Subtract(this.playerFlurry_II[6]); + this.playerFlurry_IISpan[7] = this.currentTime.Subtract(this.playerFlurry_II[7]); + this.playerFlurry_IISpan[8] = this.currentTime.Subtract(this.playerFlurry_II[8]); + this.playerFlurry_IISpan[9] = this.currentTime.Subtract(this.playerFlurry_II[9]); + this.playerFlurry_IISpan[10] = this.currentTime.Subtract(this.playerFlurry_II[10]); + this.playerFlurry_IISpan[11] = this.currentTime.Subtract(this.playerFlurry_II[11]); + this.playerFlurry_IISpan[12] = this.currentTime.Subtract(this.playerFlurry_II[12]); + this.playerFlurry_IISpan[13] = this.currentTime.Subtract(this.playerFlurry_II[13]); + this.playerFlurry_IISpan[14] = this.currentTime.Subtract(this.playerFlurry_II[14]); + this.playerFlurry_IISpan[15] = this.currentTime.Subtract(this.playerFlurry_II[15]); + this.playerFlurry_IISpan[16] = this.currentTime.Subtract(this.playerFlurry_II[16]); + this.playerFlurry_IISpan[17] = this.currentTime.Subtract(this.playerFlurry_II[17]); // Calculate time since protect IV was cast on particular player - playerProtect_IVSpan[0] = currentTime.Subtract(playerProtect_IV[0]); - playerProtect_IVSpan[1] = currentTime.Subtract(playerProtect_IV[1]); - playerProtect_IVSpan[2] = currentTime.Subtract(playerProtect_IV[2]); - playerProtect_IVSpan[3] = currentTime.Subtract(playerProtect_IV[3]); - playerProtect_IVSpan[4] = currentTime.Subtract(playerProtect_IV[4]); - playerProtect_IVSpan[5] = currentTime.Subtract(playerProtect_IV[5]); - playerProtect_IVSpan[6] = currentTime.Subtract(playerProtect_IV[6]); - playerProtect_IVSpan[7] = currentTime.Subtract(playerProtect_IV[7]); - playerProtect_IVSpan[8] = currentTime.Subtract(playerProtect_IV[8]); - playerProtect_IVSpan[9] = currentTime.Subtract(playerProtect_IV[9]); - playerProtect_IVSpan[10] = currentTime.Subtract(playerProtect_IV[10]); - playerProtect_IVSpan[11] = currentTime.Subtract(playerProtect_IV[11]); - playerProtect_IVSpan[12] = currentTime.Subtract(playerProtect_IV[12]); - playerProtect_IVSpan[13] = currentTime.Subtract(playerProtect_IV[13]); - playerProtect_IVSpan[14] = currentTime.Subtract(playerProtect_IV[14]); - playerProtect_IVSpan[15] = currentTime.Subtract(playerProtect_IV[15]); - playerProtect_IVSpan[16] = currentTime.Subtract(playerProtect_IV[16]); - playerProtect_IVSpan[17] = currentTime.Subtract(playerProtect_IV[17]); + this.playerProtect_IVSpan[0] = this.currentTime.Subtract(this.playerProtect_IV[0]); + this.playerProtect_IVSpan[1] = this.currentTime.Subtract(this.playerProtect_IV[1]); + this.playerProtect_IVSpan[2] = this.currentTime.Subtract(this.playerProtect_IV[2]); + this.playerProtect_IVSpan[3] = this.currentTime.Subtract(this.playerProtect_IV[3]); + this.playerProtect_IVSpan[4] = this.currentTime.Subtract(this.playerProtect_IV[4]); + this.playerProtect_IVSpan[5] = this.currentTime.Subtract(this.playerProtect_IV[5]); + this.playerProtect_IVSpan[6] = this.currentTime.Subtract(this.playerProtect_IV[6]); + this.playerProtect_IVSpan[7] = this.currentTime.Subtract(this.playerProtect_IV[7]); + this.playerProtect_IVSpan[8] = this.currentTime.Subtract(this.playerProtect_IV[8]); + this.playerProtect_IVSpan[9] = this.currentTime.Subtract(this.playerProtect_IV[9]); + this.playerProtect_IVSpan[10] = this.currentTime.Subtract(this.playerProtect_IV[10]); + this.playerProtect_IVSpan[11] = this.currentTime.Subtract(this.playerProtect_IV[11]); + this.playerProtect_IVSpan[12] = this.currentTime.Subtract(this.playerProtect_IV[12]); + this.playerProtect_IVSpan[13] = this.currentTime.Subtract(this.playerProtect_IV[13]); + this.playerProtect_IVSpan[14] = this.currentTime.Subtract(this.playerProtect_IV[14]); + this.playerProtect_IVSpan[15] = this.currentTime.Subtract(this.playerProtect_IV[15]); + this.playerProtect_IVSpan[16] = this.currentTime.Subtract(this.playerProtect_IV[16]); + this.playerProtect_IVSpan[17] = this.currentTime.Subtract(this.playerProtect_IV[17]); // Calculate time since protect V was cast on particular player - playerProtect_VSpan[0] = currentTime.Subtract(playerProtect_V[0]); - playerProtect_VSpan[1] = currentTime.Subtract(playerProtect_V[1]); - playerProtect_VSpan[2] = currentTime.Subtract(playerProtect_V[2]); - playerProtect_VSpan[3] = currentTime.Subtract(playerProtect_V[3]); - playerProtect_VSpan[4] = currentTime.Subtract(playerProtect_V[4]); - playerProtect_VSpan[5] = currentTime.Subtract(playerProtect_V[5]); - playerProtect_VSpan[6] = currentTime.Subtract(playerProtect_V[6]); - playerProtect_VSpan[7] = currentTime.Subtract(playerProtect_V[7]); - playerProtect_VSpan[8] = currentTime.Subtract(playerProtect_V[8]); - playerProtect_VSpan[9] = currentTime.Subtract(playerProtect_V[9]); - playerProtect_VSpan[10] = currentTime.Subtract(playerProtect_V[10]); - playerProtect_VSpan[11] = currentTime.Subtract(playerProtect_V[11]); - playerProtect_VSpan[12] = currentTime.Subtract(playerProtect_V[12]); - playerProtect_VSpan[13] = currentTime.Subtract(playerProtect_V[13]); - playerProtect_VSpan[14] = currentTime.Subtract(playerProtect_V[14]); - playerProtect_VSpan[15] = currentTime.Subtract(playerProtect_V[15]); - playerProtect_VSpan[16] = currentTime.Subtract(playerProtect_V[16]); - playerProtect_VSpan[17] = currentTime.Subtract(playerProtect_V[17]); + this.playerProtect_VSpan[0] = this.currentTime.Subtract(this.playerProtect_V[0]); + this.playerProtect_VSpan[1] = this.currentTime.Subtract(this.playerProtect_V[1]); + this.playerProtect_VSpan[2] = this.currentTime.Subtract(this.playerProtect_V[2]); + this.playerProtect_VSpan[3] = this.currentTime.Subtract(this.playerProtect_V[3]); + this.playerProtect_VSpan[4] = this.currentTime.Subtract(this.playerProtect_V[4]); + this.playerProtect_VSpan[5] = this.currentTime.Subtract(this.playerProtect_V[5]); + this.playerProtect_VSpan[6] = this.currentTime.Subtract(this.playerProtect_V[6]); + this.playerProtect_VSpan[7] = this.currentTime.Subtract(this.playerProtect_V[7]); + this.playerProtect_VSpan[8] = this.currentTime.Subtract(this.playerProtect_V[8]); + this.playerProtect_VSpan[9] = this.currentTime.Subtract(this.playerProtect_V[9]); + this.playerProtect_VSpan[10] = this.currentTime.Subtract(this.playerProtect_V[10]); + this.playerProtect_VSpan[11] = this.currentTime.Subtract(this.playerProtect_V[11]); + this.playerProtect_VSpan[12] = this.currentTime.Subtract(this.playerProtect_V[12]); + this.playerProtect_VSpan[13] = this.currentTime.Subtract(this.playerProtect_V[13]); + this.playerProtect_VSpan[14] = this.currentTime.Subtract(this.playerProtect_V[14]); + this.playerProtect_VSpan[15] = this.currentTime.Subtract(this.playerProtect_V[15]); + this.playerProtect_VSpan[16] = this.currentTime.Subtract(this.playerProtect_V[16]); + this.playerProtect_VSpan[17] = this.currentTime.Subtract(this.playerProtect_V[17]); // Calculate time since shell IV was cast on particular player - playerShell_IVSpan[0] = currentTime.Subtract(playerShell_IV[0]); - playerShell_IVSpan[1] = currentTime.Subtract(playerShell_IV[1]); - playerShell_IVSpan[2] = currentTime.Subtract(playerShell_IV[2]); - playerShell_IVSpan[3] = currentTime.Subtract(playerShell_IV[3]); - playerShell_IVSpan[4] = currentTime.Subtract(playerShell_IV[4]); - playerShell_IVSpan[5] = currentTime.Subtract(playerShell_IV[5]); - playerShell_IVSpan[6] = currentTime.Subtract(playerShell_IV[6]); - playerShell_IVSpan[7] = currentTime.Subtract(playerShell_IV[7]); - playerShell_IVSpan[8] = currentTime.Subtract(playerShell_IV[8]); - playerShell_IVSpan[9] = currentTime.Subtract(playerShell_IV[9]); - playerShell_IVSpan[10] = currentTime.Subtract(playerShell_IV[10]); - playerShell_IVSpan[11] = currentTime.Subtract(playerShell_IV[11]); - playerShell_IVSpan[12] = currentTime.Subtract(playerShell_IV[12]); - playerShell_IVSpan[13] = currentTime.Subtract(playerShell_IV[13]); - playerShell_IVSpan[14] = currentTime.Subtract(playerShell_IV[14]); - playerShell_IVSpan[15] = currentTime.Subtract(playerShell_IV[15]); - playerShell_IVSpan[16] = currentTime.Subtract(playerShell_IV[16]); - playerShell_IVSpan[17] = currentTime.Subtract(playerShell_IV[17]); + this.playerShell_IVSpan[0] = this.currentTime.Subtract(this.playerShell_IV[0]); + this.playerShell_IVSpan[1] = this.currentTime.Subtract(this.playerShell_IV[1]); + this.playerShell_IVSpan[2] = this.currentTime.Subtract(this.playerShell_IV[2]); + this.playerShell_IVSpan[3] = this.currentTime.Subtract(this.playerShell_IV[3]); + this.playerShell_IVSpan[4] = this.currentTime.Subtract(this.playerShell_IV[4]); + this.playerShell_IVSpan[5] = this.currentTime.Subtract(this.playerShell_IV[5]); + this.playerShell_IVSpan[6] = this.currentTime.Subtract(this.playerShell_IV[6]); + this.playerShell_IVSpan[7] = this.currentTime.Subtract(this.playerShell_IV[7]); + this.playerShell_IVSpan[8] = this.currentTime.Subtract(this.playerShell_IV[8]); + this.playerShell_IVSpan[9] = this.currentTime.Subtract(this.playerShell_IV[9]); + this.playerShell_IVSpan[10] = this.currentTime.Subtract(this.playerShell_IV[10]); + this.playerShell_IVSpan[11] = this.currentTime.Subtract(this.playerShell_IV[11]); + this.playerShell_IVSpan[12] = this.currentTime.Subtract(this.playerShell_IV[12]); + this.playerShell_IVSpan[13] = this.currentTime.Subtract(this.playerShell_IV[13]); + this.playerShell_IVSpan[14] = this.currentTime.Subtract(this.playerShell_IV[14]); + this.playerShell_IVSpan[15] = this.currentTime.Subtract(this.playerShell_IV[15]); + this.playerShell_IVSpan[16] = this.currentTime.Subtract(this.playerShell_IV[16]); + this.playerShell_IVSpan[17] = this.currentTime.Subtract(this.playerShell_IV[17]); // Calculate time since shell V was cast on particular player - playerShell_VSpan[0] = currentTime.Subtract(playerShell_V[0]); - playerShell_VSpan[1] = currentTime.Subtract(playerShell_V[1]); - playerShell_VSpan[2] = currentTime.Subtract(playerShell_V[2]); - playerShell_VSpan[3] = currentTime.Subtract(playerShell_V[3]); - playerShell_VSpan[4] = currentTime.Subtract(playerShell_V[4]); - playerShell_VSpan[5] = currentTime.Subtract(playerShell_V[5]); - playerShell_VSpan[6] = currentTime.Subtract(playerShell_V[6]); - playerShell_VSpan[7] = currentTime.Subtract(playerShell_V[7]); - playerShell_VSpan[8] = currentTime.Subtract(playerShell_V[8]); - playerShell_VSpan[9] = currentTime.Subtract(playerShell_V[9]); - playerShell_VSpan[10] = currentTime.Subtract(playerShell_V[10]); - playerShell_VSpan[11] = currentTime.Subtract(playerShell_V[11]); - playerShell_VSpan[12] = currentTime.Subtract(playerShell_V[12]); - playerShell_VSpan[13] = currentTime.Subtract(playerShell_V[13]); - playerShell_VSpan[14] = currentTime.Subtract(playerShell_V[14]); - playerShell_VSpan[15] = currentTime.Subtract(playerShell_V[15]); - playerShell_VSpan[16] = currentTime.Subtract(playerShell_V[16]); - playerShell_VSpan[17] = currentTime.Subtract(playerShell_V[17]); + this.playerShell_VSpan[0] = this.currentTime.Subtract(this.playerShell_V[0]); + this.playerShell_VSpan[1] = this.currentTime.Subtract(this.playerShell_V[1]); + this.playerShell_VSpan[2] = this.currentTime.Subtract(this.playerShell_V[2]); + this.playerShell_VSpan[3] = this.currentTime.Subtract(this.playerShell_V[3]); + this.playerShell_VSpan[4] = this.currentTime.Subtract(this.playerShell_V[4]); + this.playerShell_VSpan[5] = this.currentTime.Subtract(this.playerShell_V[5]); + this.playerShell_VSpan[6] = this.currentTime.Subtract(this.playerShell_V[6]); + this.playerShell_VSpan[7] = this.currentTime.Subtract(this.playerShell_V[7]); + this.playerShell_VSpan[8] = this.currentTime.Subtract(this.playerShell_V[8]); + this.playerShell_VSpan[9] = this.currentTime.Subtract(this.playerShell_V[9]); + this.playerShell_VSpan[10] = this.currentTime.Subtract(this.playerShell_V[10]); + this.playerShell_VSpan[11] = this.currentTime.Subtract(this.playerShell_V[11]); + this.playerShell_VSpan[12] = this.currentTime.Subtract(this.playerShell_V[12]); + this.playerShell_VSpan[13] = this.currentTime.Subtract(this.playerShell_V[13]); + this.playerShell_VSpan[14] = this.currentTime.Subtract(this.playerShell_V[14]); + this.playerShell_VSpan[15] = this.currentTime.Subtract(this.playerShell_V[15]); + this.playerShell_VSpan[16] = this.currentTime.Subtract(this.playerShell_V[16]); + this.playerShell_VSpan[17] = this.currentTime.Subtract(this.playerShell_V[17]); // Calculate time since phalanx II was cast on particular player - playerPhalanx_IISpan[0] = currentTime.Subtract(playerPhalanx_II[0]); - playerPhalanx_IISpan[1] = currentTime.Subtract(playerPhalanx_II[1]); - playerPhalanx_IISpan[2] = currentTime.Subtract(playerPhalanx_II[2]); - playerPhalanx_IISpan[3] = currentTime.Subtract(playerPhalanx_II[3]); - playerPhalanx_IISpan[4] = currentTime.Subtract(playerPhalanx_II[4]); - playerPhalanx_IISpan[5] = currentTime.Subtract(playerPhalanx_II[5]); + this.playerPhalanx_IISpan[0] = this.currentTime.Subtract(this.playerPhalanx_II[0]); + this.playerPhalanx_IISpan[1] = this.currentTime.Subtract(this.playerPhalanx_II[1]); + this.playerPhalanx_IISpan[2] = this.currentTime.Subtract(this.playerPhalanx_II[2]); + this.playerPhalanx_IISpan[3] = this.currentTime.Subtract(this.playerPhalanx_II[3]); + this.playerPhalanx_IISpan[4] = this.currentTime.Subtract(this.playerPhalanx_II[4]); + this.playerPhalanx_IISpan[5] = this.currentTime.Subtract(this.playerPhalanx_II[5]); // Calculate time since regen IV was cast on particular player - playerRegen_IVSpan[0] = currentTime.Subtract(playerRegen_IV[0]); - playerRegen_IVSpan[1] = currentTime.Subtract(playerRegen_IV[1]); - playerRegen_IVSpan[2] = currentTime.Subtract(playerRegen_IV[2]); - playerRegen_IVSpan[3] = currentTime.Subtract(playerRegen_IV[3]); - playerRegen_IVSpan[4] = currentTime.Subtract(playerRegen_IV[4]); - playerRegen_IVSpan[5] = currentTime.Subtract(playerRegen_IV[5]); + this.playerRegen_IVSpan[0] = this.currentTime.Subtract(this.playerRegen_IV[0]); + this.playerRegen_IVSpan[1] = this.currentTime.Subtract(this.playerRegen_IV[1]); + this.playerRegen_IVSpan[2] = this.currentTime.Subtract(this.playerRegen_IV[2]); + this.playerRegen_IVSpan[3] = this.currentTime.Subtract(this.playerRegen_IV[3]); + this.playerRegen_IVSpan[4] = this.currentTime.Subtract(this.playerRegen_IV[4]); + this.playerRegen_IVSpan[5] = this.currentTime.Subtract(this.playerRegen_IV[5]); // Calculate time since regen V was cast on particular player - playerRegen_VSpan[0] = currentTime.Subtract(playerRegen_V[0]); - playerRegen_VSpan[1] = currentTime.Subtract(playerRegen_V[1]); - playerRegen_VSpan[2] = currentTime.Subtract(playerRegen_V[2]); - playerRegen_VSpan[3] = currentTime.Subtract(playerRegen_V[3]); - playerRegen_VSpan[4] = currentTime.Subtract(playerRegen_V[4]); - playerRegen_VSpan[5] = currentTime.Subtract(playerRegen_V[5]); + this.playerRegen_VSpan[0] = this.currentTime.Subtract(this.playerRegen_V[0]); + this.playerRegen_VSpan[1] = this.currentTime.Subtract(this.playerRegen_V[1]); + this.playerRegen_VSpan[2] = this.currentTime.Subtract(this.playerRegen_V[2]); + this.playerRegen_VSpan[3] = this.currentTime.Subtract(this.playerRegen_V[3]); + this.playerRegen_VSpan[4] = this.currentTime.Subtract(this.playerRegen_V[4]); + this.playerRegen_VSpan[5] = this.currentTime.Subtract(this.playerRegen_V[5]); // Calculate time since Refresh was cast on particular player - playerRefreshSpan[0] = currentTime.Subtract(playerRefresh[0]); - playerRefreshSpan[1] = currentTime.Subtract(playerRefresh[1]); - playerRefreshSpan[2] = currentTime.Subtract(playerRefresh[2]); - playerRefreshSpan[3] = currentTime.Subtract(playerRefresh[3]); - playerRefreshSpan[4] = currentTime.Subtract(playerRefresh[4]); - playerRefreshSpan[5] = currentTime.Subtract(playerRefresh[5]); + this.playerRefreshSpan[0] = this.currentTime.Subtract(this.playerRefresh[0]); + this.playerRefreshSpan[1] = this.currentTime.Subtract(this.playerRefresh[1]); + this.playerRefreshSpan[2] = this.currentTime.Subtract(this.playerRefresh[2]); + this.playerRefreshSpan[3] = this.currentTime.Subtract(this.playerRefresh[3]); + this.playerRefreshSpan[4] = this.currentTime.Subtract(this.playerRefresh[4]); + this.playerRefreshSpan[5] = this.currentTime.Subtract(this.playerRefresh[5]); // Calculate time since Refresh II was cast on particular player - playerRefresh_IISpan[0] = currentTime.Subtract(playerRefresh_II[0]); - playerRefresh_IISpan[1] = currentTime.Subtract(playerRefresh_II[1]); - playerRefresh_IISpan[2] = currentTime.Subtract(playerRefresh_II[2]); - playerRefresh_IISpan[3] = currentTime.Subtract(playerRefresh_II[3]); - playerRefresh_IISpan[4] = currentTime.Subtract(playerRefresh_II[4]); - playerRefresh_IISpan[5] = currentTime.Subtract(playerRefresh_II[5]); + this.playerRefresh_IISpan[0] = this.currentTime.Subtract(this.playerRefresh_II[0]); + this.playerRefresh_IISpan[1] = this.currentTime.Subtract(this.playerRefresh_II[1]); + this.playerRefresh_IISpan[2] = this.currentTime.Subtract(this.playerRefresh_II[2]); + this.playerRefresh_IISpan[3] = this.currentTime.Subtract(this.playerRefresh_II[3]); + this.playerRefresh_IISpan[4] = this.currentTime.Subtract(this.playerRefresh_II[4]); + this.playerRefresh_IISpan[5] = this.currentTime.Subtract(this.playerRefresh_II[5]); #endregion - #region "== Set array values for GUI (Enabled) Checkboxes" + #region "== Set array values for GUI (Enabled) Checkboxes" // Set array values for GUI "Enabled" checkboxes - CheckBox[] enabledBoxes = new CheckBox[18]; - enabledBoxes[0] = player0enabled; - enabledBoxes[1] = player1enabled; - enabledBoxes[2] = player2enabled; - enabledBoxes[3] = player3enabled; - enabledBoxes[4] = player4enabled; - enabledBoxes[5] = player5enabled; - enabledBoxes[6] = player6enabled; - enabledBoxes[7] = player7enabled; - enabledBoxes[8] = player8enabled; - enabledBoxes[9] = player9enabled; - enabledBoxes[10] = player10enabled; - enabledBoxes[11] = player11enabled; - enabledBoxes[12] = player12enabled; - enabledBoxes[13] = player13enabled; - enabledBoxes[14] = player14enabled; - enabledBoxes[15] = player15enabled; - enabledBoxes[16] = player16enabled; - enabledBoxes[17] = player17enabled; + var enabledBoxes = new CheckBox[18]; + enabledBoxes[0] = this.player0enabled; + enabledBoxes[1] = this.player1enabled; + enabledBoxes[2] = this.player2enabled; + enabledBoxes[3] = this.player3enabled; + enabledBoxes[4] = this.player4enabled; + enabledBoxes[5] = this.player5enabled; + enabledBoxes[6] = this.player6enabled; + enabledBoxes[7] = this.player7enabled; + enabledBoxes[8] = this.player8enabled; + enabledBoxes[9] = this.player9enabled; + enabledBoxes[10] = this.player10enabled; + enabledBoxes[11] = this.player11enabled; + enabledBoxes[12] = this.player12enabled; + enabledBoxes[13] = this.player13enabled; + enabledBoxes[14] = this.player14enabled; + enabledBoxes[15] = this.player15enabled; + enabledBoxes[16] = this.player16enabled; + enabledBoxes[17] = this.player17enabled; #endregion - #region "== Set array values for GUI (High Priority) Checkboxes" + #region "== Set array values for GUI (High Priority) Checkboxes" // Set array values for GUI "High Priority" checkboxes - CheckBox[] highPriorityBoxes = new CheckBox[18]; - highPriorityBoxes[0] = player0priority; - highPriorityBoxes[1] = player1priority; - highPriorityBoxes[2] = player2priority; - highPriorityBoxes[3] = player3priority; - highPriorityBoxes[4] = player4priority; - highPriorityBoxes[5] = player5priority; - highPriorityBoxes[6] = player6priority; - highPriorityBoxes[7] = player7priority; - highPriorityBoxes[8] = player8priority; - highPriorityBoxes[9] = player9priority; - highPriorityBoxes[10] = player10priority; - highPriorityBoxes[11] = player11priority; - highPriorityBoxes[12] = player12priority; - highPriorityBoxes[13] = player13priority; - highPriorityBoxes[14] = player14priority; - highPriorityBoxes[15] = player15priority; - highPriorityBoxes[16] = player16priority; - highPriorityBoxes[17] = player17priority; + var highPriorityBoxes = new CheckBox[18]; + highPriorityBoxes[0] = this.player0priority; + highPriorityBoxes[1] = this.player1priority; + highPriorityBoxes[2] = this.player2priority; + highPriorityBoxes[3] = this.player3priority; + highPriorityBoxes[4] = this.player4priority; + highPriorityBoxes[5] = this.player5priority; + highPriorityBoxes[6] = this.player6priority; + highPriorityBoxes[7] = this.player7priority; + highPriorityBoxes[8] = this.player8priority; + highPriorityBoxes[9] = this.player9priority; + highPriorityBoxes[10] = this.player10priority; + highPriorityBoxes[11] = this.player11priority; + highPriorityBoxes[12] = this.player12priority; + highPriorityBoxes[13] = this.player13priority; + highPriorityBoxes[14] = this.player14priority; + highPriorityBoxes[15] = this.player15priority; + highPriorityBoxes[16] = this.player16priority; + highPriorityBoxes[17] = this.player17priority; #endregion - #region "== Job ability Divine Seal and Convert" + #region "== Job ability Divine Seal and Convert" if (Settings.Default.divineSealBox - && _FFACEPL.Player.MPPCurrent <= 11 // - && _FFACEPL.Timer.GetAbilityRecast(AbilityList.Divine_Seal) == 0 - && !_FFACEPL.Player.StatusEffects.Contains(StatusEffect.Weakness)) + && _ELITEAPIPL.Player.MPP <= 11 // + && _ELITEAPIPL.Recast.GetAbilityRecast((int)AbilityList.Divine_Seal) == 0 + && !_ELITEAPIPL.Player.Buffs.Contains((short)StatusEffect.Weakness)) { Thread.Sleep(3000); - _FFACEPL.Windower.SendString("/ja \"Divine Seal\" "); - ActionLockMethod(); + _ELITEAPIPL.ThirdParty.SendString("/ja \"Divine Seal\" "); + this.ActionLockMethod(); } else if (Settings.Default.Convert - && _FFACEPL.Player.MPPCurrent <= 10 // - && _FFACEPL.Timer.GetAbilityRecast(AbilityList.Convert) == 0 - && !_FFACEPL.Player.StatusEffects.Contains(StatusEffect.Weakness)) + && _ELITEAPIPL.Player.MPP <= 10 // + && _ELITEAPIPL.Recast.GetAbilityRecast((int)AbilityList.Convert) == 0 + && !_ELITEAPIPL.Player.Buffs.Contains((short)StatusEffect.Weakness)) { Thread.Sleep(1000); - _FFACEPL.Windower.SendString("/ja \"Convert\" "); + _ELITEAPIPL.ThirdParty.SendString("/ja \"Convert\" "); return; //ActionLockMethod(); } #endregion - #region "== Low MP Tell / MP OK Tell" - if (_FFACEPL.Player.MPCurrent <= (int)Settings.Default.mpMinCastValue && _FFACEPL.Player.MPCurrent != 0) + #region "== Low MP Tell / MP OK Tell" + if (_ELITEAPIPL.Player.MP <= (int)Settings.Default.mpMinCastValue && _ELITEAPIPL.Player.MP != 0) { - if (Settings.Default.lowMPcheckBox && !islowmp) + if (Settings.Default.lowMPcheckBox && !this.islowmp) { - _FFACEPL.Windower.SendString("/tell " + _FFACEMonitored.Player.Name + " MP is low!"); - islowmp = true; + _ELITEAPIPL.ThirdParty.SendString("/tell " + this._ELITEAPIMonitored.Player.Name + " MP is low!"); + this.islowmp = true; return; } - islowmp = true; + this.islowmp = true; return; } - if (_FFACEPL.Player.MPCurrent > (int)Settings.Default.mpMinCastValue && _FFACEPL.Player.MPCurrent != 0) + if (_ELITEAPIPL.Player.MP > (int)Settings.Default.mpMinCastValue && _ELITEAPIPL.Player.MP != 0) { - if (Settings.Default.lowMPcheckBox && islowmp) + if (Settings.Default.lowMPcheckBox && this.islowmp) { - _FFACEPL.Windower.SendString("/tell " + _FFACEMonitored.Player.Name + " MP OK!"); - islowmp = false; + _ELITEAPIPL.ThirdParty.SendString("/tell " + this._ELITEAPIMonitored.Player.Name + " MP OK!"); + this.islowmp = false; } } #endregion - #region "== PL stationary for Cures (Casting Possible)" + #region "== PL stationary for Cures (Casting Possible)" // Only perform actions if PL is stationary - if ((_FFACEPL.Player.PosX == plX) && (_FFACEPL.Player.PosY == plY) && (_FFACEPL.Player.PosZ == plZ) && (_FFACEPL.Player.GetLoginStatus == LoginStatus.LoggedIn) && (!pauseActions) && ((_FFACEPL.Player.Status == Status.Standing) || (_FFACEPL.Player.Status == Status.Fighting))) + if ((_ELITEAPIPL.Player.X == this.plX) && (_ELITEAPIPL.Player.Y == this.plY) && (_ELITEAPIPL.Player.Z == this.plZ) && (_ELITEAPIPL.Player.LoginStatus == (int)LoginStatus.LoggedIn) && (!this.pauseActions) && ((_ELITEAPIPL.Player.Status == (uint)Status.Standing) || (_ELITEAPIPL.Player.Status == (uint)Status.Fighting))) { - - var playerHpOrder = _FFACEMonitored.PartyMember.Keys.OrderBy(k => _FFACEMonitored.PartyMember[k].HPPCurrent); + var playerHpOrder = this._ELITEAPIMonitored.Party.GetPartyMembers().Where(p => p.Active >= 1).OrderBy(p => p.CurrentHPP).Select(p => p.Index); // Loop through keys in order of lowest HP to highest HP foreach (byte id in playerHpOrder) @@ -1744,672 +2847,936 @@ private void actionTimer_Tick(object sender, EventArgs e) // Cures // First, is casting possible, and enabled? - if (castingPossible(id) && (_FFACEMonitored.PartyMember[id].Active) && (enabledBoxes[id].Checked) && (_FFACEMonitored.PartyMember[id].HPCurrent > 0) && (!castingLock)) + if (this.castingPossible(id) && (this._ELITEAPIMonitored.Party.GetPartyMembers()[id].Active >= 1) && (enabledBoxes[id].Checked) && (this._ELITEAPIMonitored.Party.GetPartyMembers()[id].CurrentHP > 0) && (!this.castingLock)) { - if ((highPriorityBoxes[id].Checked) && (_FFACEMonitored.PartyMember[id].HPPCurrent <= Settings.Default.priorityCurePercentage)) + if ((highPriorityBoxes[id].Checked) && (this._ELITEAPIMonitored.Party.GetPartyMembers()[id].CurrentHPP <= Settings.Default.priorityCurePercentage)) { - CureCalculator(id); + this.CureCalculator(id); break; } - if ((_FFACEMonitored.PartyMember[id].HPPCurrent <= Settings.Default.curePercentage) && (castingPossible(id))) + if ((this._ELITEAPIMonitored.Party.GetPartyMembers()[id].CurrentHPP <= Settings.Default.curePercentage) && (this.castingPossible(id))) { - CureCalculator(id); + this.CureCalculator(id); break; } } } - #endregion + #endregion - #region "== PL Debuff Removal with Spells or Items" + #region "== PL Debuff Removal with Spells or Items" // PL and Monitored Player Debuff Removal // Starting with PL - foreach (StatusEffect plEffect in _FFACEPL.Player.StatusEffects) + foreach (StatusEffect plEffect in _ELITEAPIPL.Player.Buffs) { if ((plEffect == StatusEffect.Silence) && (Settings.Default.plSilenceItemEnabled)) { // Check to make sure we have echo drops - if (_FFACEPL.Item.GetInventoryItemCount((ushort)FFACE.ParseResources.GetItemId(Settings.Default.plSilenceItemString)) > 0 || _FFACEPL.Item.GetTempItemCount((ushort)FFACE.ParseResources.GetItemId(Settings.Default.plSilenceItemString)) > 0) + if (GetInventoryItemCount(_ELITEAPIPL, GetItemId(Settings.Default.plSilenceItemString)) > 0 || GetTempItemCount(_ELITEAPIPL, GetItemId(Settings.Default.plSilenceItemString)) > 0) { - _FFACEPL.Windower.SendString(string.Format("/item \"{0}\" ", Settings.Default.plSilenceItemString)); + _ELITEAPIPL.ThirdParty.SendString(string.Format("/item \"{0}\" ", Settings.Default.plSilenceItemString)); Thread.Sleep(2000); } } if ((plEffect == StatusEffect.Doom && Settings.Default.plDoomEnabled) /* Add more options from UI HERE*/) { // Check to make sure we have holy water - if (_FFACEPL.Item.GetInventoryItemCount((ushort)FFACE.ParseResources.GetItemId(Settings.Default.PLDoomitem)) > 0 || _FFACEPL.Item.GetTempItemCount((ushort)FFACE.ParseResources.GetItemId(Settings.Default.PLDoomitem)) > 0) + if (GetInventoryItemCount(_ELITEAPIPL, GetItemId(Settings.Default.PLDoomitem)) > 0 || GetTempItemCount(_ELITEAPIPL, GetItemId(Settings.Default.PLDoomitem)) > 0) { - _FFACEPL.Windower.SendString(string.Format("/item \"{0}\" ", Settings.Default.PLDoomitem)); + _ELITEAPIPL.ThirdParty.SendString(string.Format("/item \"{0}\" ", Settings.Default.PLDoomitem)); Thread.Sleep(2000); } } - else if ((plEffect == StatusEffect.Doom) && (Settings.Default.plDoom) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Cursna) == 0)) { castSpell(_FFACEPL.Player.Name, "Cursna"); } - else if ((plEffect == StatusEffect.Paralysis) && (Settings.Default.plParalysis) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Paralyna) == 0)) { castSpell(_FFACEPL.Player.Name, "Paralyna"); } - else if ((plEffect == StatusEffect.Poison) && (Settings.Default.plPoison) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Poisona) == 0)) { castSpell(_FFACEPL.Player.Name, "Poisona"); } - else if ((plEffect == StatusEffect.Attack_Down) && (Settings.Default.plAttackDown) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEPL.Player.Name, "Erase"); } - else if ((plEffect == StatusEffect.Blindness) && (Settings.Default.plBlindness) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Blindna) == 0)) { castSpell(_FFACEPL.Player.Name, "Blindna"); } - else if ((plEffect == StatusEffect.Bind) && (Settings.Default.plBind) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEPL.Player.Name, "Erase"); } - else if ((plEffect == StatusEffect.Weight) && (Settings.Default.plWeight) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEPL.Player.Name, "Erase"); } - else if ((plEffect == StatusEffect.Slow) && (Settings.Default.plSlow) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEPL.Player.Name, "Erase"); } - else if ((plEffect == StatusEffect.Curse) && (Settings.Default.plCurse) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Cursna) == 0)) { castSpell(_FFACEPL.Player.Name, "Cursna"); } - else if ((plEffect == StatusEffect.Curse2) && (Settings.Default.plCurse2) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Cursna) == 0)) { castSpell(_FFACEPL.Player.Name, "Cursna"); } - else if ((plEffect == StatusEffect.Addle) && (Settings.Default.plAddle) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEPL.Player.Name, "Erase"); } - else if ((plEffect == StatusEffect.Bane) && (Settings.Default.plBane) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Cursna) == 0)) { castSpell(_FFACEPL.Player.Name, "Cursna"); } - else if ((plEffect == StatusEffect.Plague) && (Settings.Default.plPlague) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Viruna) == 0)) { castSpell(_FFACEPL.Player.Name, "Viruna"); } - else if ((plEffect == StatusEffect.Disease) && (Settings.Default.plDisease) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Viruna) == 0)) { castSpell(_FFACEPL.Player.Name, "Viruna"); } - else if ((plEffect == StatusEffect.Burn) && (Settings.Default.plBurn) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEPL.Player.Name, "Erase"); } - else if ((plEffect == StatusEffect.Frost) && (Settings.Default.plFrost) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEPL.Player.Name, "Erase"); } - else if ((plEffect == StatusEffect.Choke) && (Settings.Default.plChoke) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEPL.Player.Name, "Erase"); } - else if ((plEffect == StatusEffect.Rasp) && (Settings.Default.plRasp) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEPL.Player.Name, "Erase"); } - else if ((plEffect == StatusEffect.Shock) && (Settings.Default.plShock) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEPL.Player.Name, "Erase"); } - else if ((plEffect == StatusEffect.Drown) && (Settings.Default.plDrown) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEPL.Player.Name, "Erase"); } - else if ((plEffect == StatusEffect.Dia) && (Settings.Default.plDia) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEPL.Player.Name, "Erase"); } - else if ((plEffect == StatusEffect.Bio) && (Settings.Default.plBio) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEPL.Player.Name, "Erase"); } - else if ((plEffect == StatusEffect.STR_Down) && (Settings.Default.plStrDown) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEPL.Player.Name, "Erase"); } - else if ((plEffect == StatusEffect.DEX_Down) && (Settings.Default.plDexDown) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEPL.Player.Name, "Erase"); } - else if ((plEffect == StatusEffect.VIT_Down) && (Settings.Default.plVitDown) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEPL.Player.Name, "Erase"); } - else if ((plEffect == StatusEffect.AGI_Down) && (Settings.Default.plAgiDown) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEPL.Player.Name, "Erase"); } - else if ((plEffect == StatusEffect.INT_Down) && (Settings.Default.plIntDown) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEPL.Player.Name, "Erase"); } - else if ((plEffect == StatusEffect.MND_Down) && (Settings.Default.plMndDown) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEPL.Player.Name, "Erase"); } - else if ((plEffect == StatusEffect.CHR_Down) && (Settings.Default.plChrDown) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEPL.Player.Name, "Erase"); } - else if ((plEffect == StatusEffect.Max_HP_Down) && (Settings.Default.plMaxHpDown) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEPL.Player.Name, "Erase"); } - else if ((plEffect == StatusEffect.Max_MP_Down) && (Settings.Default.plMaxMpDown) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEPL.Player.Name, "Erase"); } - else if ((plEffect == StatusEffect.Accuracy_Down) && (Settings.Default.plAccuracyDown) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEPL.Player.Name, "Erase"); } - else if ((plEffect == StatusEffect.Evasion_Down) && (Settings.Default.plEvasionDown) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEPL.Player.Name, "Erase"); } - else if ((plEffect == StatusEffect.Defense_Down) && (Settings.Default.plDefenseDown) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEPL.Player.Name, "Erase"); } - else if ((plEffect == StatusEffect.Flash) && (Settings.Default.plFlash) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEPL.Player.Name, "Erase"); } - else if ((plEffect == StatusEffect.Magic_Acc_Down) && (Settings.Default.plMagicAccDown) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEPL.Player.Name, "Erase"); } - else if ((plEffect == StatusEffect.Magic_Atk_Down) && (Settings.Default.plMagicAtkDown) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEPL.Player.Name, "Erase"); } - else if ((plEffect == StatusEffect.Helix) && (Settings.Default.plHelix) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEPL.Player.Name, "Erase"); } - else if ((plEffect == StatusEffect.Max_TP_Down) && (Settings.Default.plMaxTpDown) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEPL.Player.Name, "Erase"); } - else if ((plEffect == StatusEffect.Requiem) && (Settings.Default.plRequiem) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEPL.Player.Name, "Erase"); } - else if ((plEffect == StatusEffect.Elegy) && (Settings.Default.plElegy) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEPL.Player.Name, "Erase"); } - else if ((plEffect == StatusEffect.Threnody) && (Settings.Default.plThrenody) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEPL.Player.Name, "Erase"); } + else if ((plEffect == StatusEffect.Doom) && (Settings.Default.plDoom) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Cursna) == 0)) + { + this.castSpell(_ELITEAPIPL.Player.Name, "Cursna"); + } + else if ((plEffect == StatusEffect.Paralysis) && (Settings.Default.plParalysis) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Paralyna) == 0)) + { + this.castSpell(_ELITEAPIPL.Player.Name, "Paralyna"); + } + else if ((plEffect == StatusEffect.Poison) && (Settings.Default.plPoison) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Poisona) == 0)) + { + this.castSpell(_ELITEAPIPL.Player.Name, "Poisona"); + } + else if ((plEffect == StatusEffect.Attack_Down) && (Settings.Default.plAttackDown) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(_ELITEAPIPL.Player.Name, "Erase"); + } + else if ((plEffect == StatusEffect.Blindness) && (Settings.Default.plBlindness) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Blindna) == 0)) + { + this.castSpell(_ELITEAPIPL.Player.Name, "Blindna"); + } + else if ((plEffect == StatusEffect.Bind) && (Settings.Default.plBind) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(_ELITEAPIPL.Player.Name, "Erase"); + } + else if ((plEffect == StatusEffect.Weight) && (Settings.Default.plWeight) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(_ELITEAPIPL.Player.Name, "Erase"); + } + else if ((plEffect == StatusEffect.Slow) && (Settings.Default.plSlow) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(_ELITEAPIPL.Player.Name, "Erase"); + } + else if ((plEffect == StatusEffect.Curse) && (Settings.Default.plCurse) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Cursna) == 0)) + { + this.castSpell(_ELITEAPIPL.Player.Name, "Cursna"); + } + else if ((plEffect == StatusEffect.Curse2) && (Settings.Default.plCurse2) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Cursna) == 0)) + { + this.castSpell(_ELITEAPIPL.Player.Name, "Cursna"); + } + else if ((plEffect == StatusEffect.Addle) && (Settings.Default.plAddle) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(_ELITEAPIPL.Player.Name, "Erase"); + } + else if ((plEffect == StatusEffect.Bane) && (Settings.Default.plBane) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Cursna) == 0)) + { + this.castSpell(_ELITEAPIPL.Player.Name, "Cursna"); + } + else if ((plEffect == StatusEffect.Plague) && (Settings.Default.plPlague) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Viruna) == 0)) + { + this.castSpell(_ELITEAPIPL.Player.Name, "Viruna"); + } + else if ((plEffect == StatusEffect.Disease) && (Settings.Default.plDisease) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Viruna) == 0)) + { + this.castSpell(_ELITEAPIPL.Player.Name, "Viruna"); + } + else if ((plEffect == StatusEffect.Burn) && (Settings.Default.plBurn) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(_ELITEAPIPL.Player.Name, "Erase"); + } + else if ((plEffect == StatusEffect.Frost) && (Settings.Default.plFrost) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(_ELITEAPIPL.Player.Name, "Erase"); + } + else if ((plEffect == StatusEffect.Choke) && (Settings.Default.plChoke) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(_ELITEAPIPL.Player.Name, "Erase"); + } + else if ((plEffect == StatusEffect.Rasp) && (Settings.Default.plRasp) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(_ELITEAPIPL.Player.Name, "Erase"); + } + else if ((plEffect == StatusEffect.Shock) && (Settings.Default.plShock) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(_ELITEAPIPL.Player.Name, "Erase"); + } + else if ((plEffect == StatusEffect.Drown) && (Settings.Default.plDrown) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(_ELITEAPIPL.Player.Name, "Erase"); + } + else if ((plEffect == StatusEffect.Dia) && (Settings.Default.plDia) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(_ELITEAPIPL.Player.Name, "Erase"); + } + else if ((plEffect == StatusEffect.Bio) && (Settings.Default.plBio) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(_ELITEAPIPL.Player.Name, "Erase"); + } + else if ((plEffect == StatusEffect.STR_Down) && (Settings.Default.plStrDown) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(_ELITEAPIPL.Player.Name, "Erase"); + } + else if ((plEffect == StatusEffect.DEX_Down) && (Settings.Default.plDexDown) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(_ELITEAPIPL.Player.Name, "Erase"); + } + else if ((plEffect == StatusEffect.VIT_Down) && (Settings.Default.plVitDown) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(_ELITEAPIPL.Player.Name, "Erase"); + } + else if ((plEffect == StatusEffect.AGI_Down) && (Settings.Default.plAgiDown) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(_ELITEAPIPL.Player.Name, "Erase"); + } + else if ((plEffect == StatusEffect.INT_Down) && (Settings.Default.plIntDown) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(_ELITEAPIPL.Player.Name, "Erase"); + } + else if ((plEffect == StatusEffect.MND_Down) && (Settings.Default.plMndDown) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(_ELITEAPIPL.Player.Name, "Erase"); + } + else if ((plEffect == StatusEffect.CHR_Down) && (Settings.Default.plChrDown) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(_ELITEAPIPL.Player.Name, "Erase"); + } + else if ((plEffect == StatusEffect.Max_HP_Down) && (Settings.Default.plMaxHpDown) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(_ELITEAPIPL.Player.Name, "Erase"); + } + else if ((plEffect == StatusEffect.Max_MP_Down) && (Settings.Default.plMaxMpDown) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(_ELITEAPIPL.Player.Name, "Erase"); + } + else if ((plEffect == StatusEffect.Accuracy_Down) && (Settings.Default.plAccuracyDown) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(_ELITEAPIPL.Player.Name, "Erase"); + } + else if ((plEffect == StatusEffect.Evasion_Down) && (Settings.Default.plEvasionDown) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(_ELITEAPIPL.Player.Name, "Erase"); + } + else if ((plEffect == StatusEffect.Defense_Down) && (Settings.Default.plDefenseDown) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(_ELITEAPIPL.Player.Name, "Erase"); + } + else if ((plEffect == StatusEffect.Flash) && (Settings.Default.plFlash) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(_ELITEAPIPL.Player.Name, "Erase"); + } + else if ((plEffect == StatusEffect.Magic_Acc_Down) && (Settings.Default.plMagicAccDown) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(_ELITEAPIPL.Player.Name, "Erase"); + } + else if ((plEffect == StatusEffect.Magic_Atk_Down) && (Settings.Default.plMagicAtkDown) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(_ELITEAPIPL.Player.Name, "Erase"); + } + else if ((plEffect == StatusEffect.Helix) && (Settings.Default.plHelix) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(_ELITEAPIPL.Player.Name, "Erase"); + } + else if ((plEffect == StatusEffect.Max_TP_Down) && (Settings.Default.plMaxTpDown) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(_ELITEAPIPL.Player.Name, "Erase"); + } + else if ((plEffect == StatusEffect.Requiem) && (Settings.Default.plRequiem) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(_ELITEAPIPL.Player.Name, "Erase"); + } + else if ((plEffect == StatusEffect.Elegy) && (Settings.Default.plElegy) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(_ELITEAPIPL.Player.Name, "Erase"); + } + else if ((plEffect == StatusEffect.Threnody) && (Settings.Default.plThrenody) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(_ELITEAPIPL.Player.Name, "Erase"); + } } #endregion - #region "== Monitored Player Debuff Removal" + #region "== Monitored Player Debuff Removal" // Next, we check monitored player - if ((_FFACEPL.NPC.Distance(_FFACEMonitored.Player.ID) < 21) && (_FFACEPL.NPC.Distance(_FFACEMonitored.Player.ID) > 0) && (_FFACEMonitored.Player.HPCurrent > 0)) + if ((_ELITEAPIPL.Entity.GetEntity((int)this._ELITEAPIMonitored.Party.GetPartyMember(0).ID).Distance < 21) && (_ELITEAPIPL.Entity.GetEntity((int)this._ELITEAPIMonitored.Party.GetPartyMember(0).ID).Distance > 0) && (this._ELITEAPIMonitored.Player.HP > 0)) { - foreach (StatusEffect monitoredEffect in _FFACEMonitored.Player.StatusEffects) + foreach (StatusEffect monitoredEffect in this._ELITEAPIMonitored.Player.Buffs) { - if ((monitoredEffect == StatusEffect.Doom) && (Settings.Default.monitoredDoom) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Cursna) == 0)) { castSpell(_FFACEMonitored.Player.Name, "Cursna"); } - else if ((monitoredEffect == StatusEffect.Sleep) && (Settings.Default.monitoredSleep) && (Settings.Default.wakeSleepEnabled)) { castSpell(_FFACEMonitored.Player.Name, Settings.Default.wakeSleepSpellString); } - else if ((monitoredEffect == StatusEffect.Sleep2) && (Settings.Default.monitoredSleep2) && (Settings.Default.wakeSleepEnabled)) { castSpell(_FFACEMonitored.Player.Name, Settings.Default.wakeSleepSpellString); } - else if ((monitoredEffect == StatusEffect.Silence) && (Settings.Default.monitoredSilence) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Silena) == 0)) { castSpell(_FFACEMonitored.Player.Name, "Silena"); } - else if ((monitoredEffect == StatusEffect.Petrification) && (Settings.Default.monitoredPetrification) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Stona) == 0)) { castSpell(_FFACEMonitored.Player.Name, "Stona"); } - else if ((monitoredEffect == StatusEffect.Paralysis) && (Settings.Default.monitoredParalysis) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Paralyna) == 0)) { castSpell(_FFACEMonitored.Player.Name, "Paralyna"); } - else if ((monitoredEffect == StatusEffect.Poison) && (Settings.Default.monitoredPoison) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Poisona) == 0)) { castSpell(_FFACEMonitored.Player.Name, "Poisona"); } - else if ((monitoredEffect == StatusEffect.Attack_Down) && (Settings.Default.monitoredAttackDown) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEMonitored.Player.Name, "Erase"); } - else if ((monitoredEffect == StatusEffect.Blindness) && (Settings.Default.monitoredBlindness && (_FFACEPL.Timer.GetSpellRecast(SpellList.Blindna) == 0))) { castSpell(_FFACEMonitored.Player.Name, "Blindna"); } - else if ((monitoredEffect == StatusEffect.Bind) && (Settings.Default.monitoredBind) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEMonitored.Player.Name, "Erase"); } - else if ((monitoredEffect == StatusEffect.Weight) && (Settings.Default.monitoredWeight) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEMonitored.Player.Name, "Erase"); } - else if ((monitoredEffect == StatusEffect.Slow) && (Settings.Default.monitoredSlow) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEMonitored.Player.Name, "Erase"); } - else if ((monitoredEffect == StatusEffect.Curse) && (Settings.Default.monitoredCurse) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Cursna) == 0)) { castSpell(_FFACEMonitored.Player.Name, "Cursna"); } - else if ((monitoredEffect == StatusEffect.Curse2) && (Settings.Default.monitoredCurse2) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Cursna) == 0)) { castSpell(_FFACEMonitored.Player.Name, "Cursna"); } - else if ((monitoredEffect == StatusEffect.Addle) && (Settings.Default.monitoredAddle) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEMonitored.Player.Name, "Erase"); } - else if ((monitoredEffect == StatusEffect.Bane) && (Settings.Default.monitoredBane) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Cursna) == 0)) { castSpell(_FFACEMonitored.Player.Name, "Cursna"); } - else if ((monitoredEffect == StatusEffect.Plague) && (Settings.Default.monitoredPlague) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Viruna) == 0)) { castSpell(_FFACEMonitored.Player.Name, "Viruna"); } - else if ((monitoredEffect == StatusEffect.Disease) && (Settings.Default.monitoredDisease) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Viruna) == 0)) { castSpell(_FFACEMonitored.Player.Name, "Viruna"); } - else if ((monitoredEffect == StatusEffect.Burn) && (Settings.Default.monitoredBurn) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEMonitored.Player.Name, "Erase"); } - else if ((monitoredEffect == StatusEffect.Frost) && (Settings.Default.monitoredFrost) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEMonitored.Player.Name, "Erase"); } - else if ((monitoredEffect == StatusEffect.Choke) && (Settings.Default.monitoredChoke) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEMonitored.Player.Name, "Erase"); } - else if ((monitoredEffect == StatusEffect.Rasp) && (Settings.Default.monitoredRasp) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEMonitored.Player.Name, "Erase"); } - else if ((monitoredEffect == StatusEffect.Shock) && (Settings.Default.monitoredShock) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEMonitored.Player.Name, "Erase"); } - else if ((monitoredEffect == StatusEffect.Drown) && (Settings.Default.monitoredDrown) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEMonitored.Player.Name, "Erase"); } - else if ((monitoredEffect == StatusEffect.Dia) && (Settings.Default.monitoredDia) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEMonitored.Player.Name, "Erase"); } - else if ((monitoredEffect == StatusEffect.Bio) && (Settings.Default.monitoredBio) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEMonitored.Player.Name, "Erase"); } - else if ((monitoredEffect == StatusEffect.STR_Down) && (Settings.Default.monitoredStrDown) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEMonitored.Player.Name, "Erase"); } - else if ((monitoredEffect == StatusEffect.DEX_Down) && (Settings.Default.monitoredDexDown) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEMonitored.Player.Name, "Erase"); } - else if ((monitoredEffect == StatusEffect.VIT_Down) && (Settings.Default.monitoredVitDown) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEMonitored.Player.Name, "Erase"); } - else if ((monitoredEffect == StatusEffect.AGI_Down) && (Settings.Default.monitoredAgiDown) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEMonitored.Player.Name, "Erase"); } - else if ((monitoredEffect == StatusEffect.INT_Down) && (Settings.Default.monitoredIntDown) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEMonitored.Player.Name, "Erase"); } - else if ((monitoredEffect == StatusEffect.MND_Down) && (Settings.Default.monitoredMndDown) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEMonitored.Player.Name, "Erase"); } - else if ((monitoredEffect == StatusEffect.CHR_Down) && (Settings.Default.monitoredChrDown) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEMonitored.Player.Name, "Erase"); } - else if ((monitoredEffect == StatusEffect.Max_HP_Down) && (Settings.Default.monitoredMaxHpDown) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEMonitored.Player.Name, "Erase"); } - else if ((monitoredEffect == StatusEffect.Max_MP_Down) && (Settings.Default.monitoredMaxMpDown) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEMonitored.Player.Name, "Erase"); } - else if ((monitoredEffect == StatusEffect.Accuracy_Down) && (Settings.Default.monitoredAccuracyDown) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEMonitored.Player.Name, "Erase"); } - else if ((monitoredEffect == StatusEffect.Evasion_Down) && (Settings.Default.monitoredEvasionDown) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEMonitored.Player.Name, "Erase"); } - else if ((monitoredEffect == StatusEffect.Defense_Down) && (Settings.Default.monitoredDefenseDown) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEMonitored.Player.Name, "Erase"); } - else if ((monitoredEffect == StatusEffect.Flash) && (Settings.Default.monitoredFlash) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEMonitored.Player.Name, "Erase"); } - else if ((monitoredEffect == StatusEffect.Magic_Acc_Down) && (Settings.Default.monitoredMagicAccDown) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEMonitored.Player.Name, "Erase"); } - else if ((monitoredEffect == StatusEffect.Magic_Atk_Down) && (Settings.Default.monitoredMagicAtkDown) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEMonitored.Player.Name, "Erase"); } - else if ((monitoredEffect == StatusEffect.Helix) && (Settings.Default.monitoredHelix) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEMonitored.Player.Name, "Erase"); } - else if ((monitoredEffect == StatusEffect.Max_TP_Down) && (Settings.Default.monitoredMaxTpDown) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEMonitored.Player.Name, "Erase"); } - else if ((monitoredEffect == StatusEffect.Requiem) && (Settings.Default.monitoredRequiem) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEMonitored.Player.Name, "Erase"); } - else if ((monitoredEffect == StatusEffect.Elegy) && (Settings.Default.monitoredElegy) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEMonitored.Player.Name, "Erase"); } - else if ((monitoredEffect == StatusEffect.Threnody) && (Settings.Default.monitoredThrenody) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Erase) == 0)) { castSpell(_FFACEMonitored.Player.Name, "Erase"); } + if ((monitoredEffect == StatusEffect.Doom) && (Settings.Default.monitoredDoom) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Cursna) == 0)) + { + this.castSpell(this._ELITEAPIMonitored.Player.Name, "Cursna"); + } + else if ((monitoredEffect == StatusEffect.Sleep) && (Settings.Default.monitoredSleep) && (Settings.Default.wakeSleepEnabled)) + { + this.castSpell(this._ELITEAPIMonitored.Player.Name, Settings.Default.wakeSleepSpellString); + } + else if ((monitoredEffect == StatusEffect.Sleep2) && (Settings.Default.monitoredSleep2) && (Settings.Default.wakeSleepEnabled)) + { + this.castSpell(this._ELITEAPIMonitored.Player.Name, Settings.Default.wakeSleepSpellString); + } + else if ((monitoredEffect == StatusEffect.Silence) && (Settings.Default.monitoredSilence) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Silena) == 0)) + { + this.castSpell(this._ELITEAPIMonitored.Player.Name, "Silena"); + } + else if ((monitoredEffect == StatusEffect.Petrification) && (Settings.Default.monitoredPetrification) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Stona) == 0)) + { + this.castSpell(this._ELITEAPIMonitored.Player.Name, "Stona"); + } + else if ((monitoredEffect == StatusEffect.Paralysis) && (Settings.Default.monitoredParalysis) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Paralyna) == 0)) + { + this.castSpell(this._ELITEAPIMonitored.Player.Name, "Paralyna"); + } + else if ((monitoredEffect == StatusEffect.Poison) && (Settings.Default.monitoredPoison) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Poisona) == 0)) + { + this.castSpell(this._ELITEAPIMonitored.Player.Name, "Poisona"); + } + else if ((monitoredEffect == StatusEffect.Attack_Down) && (Settings.Default.monitoredAttackDown) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(this._ELITEAPIMonitored.Player.Name, "Erase"); + } + else if ((monitoredEffect == StatusEffect.Blindness) && (Settings.Default.monitoredBlindness && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Blindna) == 0))) + { + this.castSpell(this._ELITEAPIMonitored.Player.Name, "Blindna"); + } + else if ((monitoredEffect == StatusEffect.Bind) && (Settings.Default.monitoredBind) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(this._ELITEAPIMonitored.Player.Name, "Erase"); + } + else if ((monitoredEffect == StatusEffect.Weight) && (Settings.Default.monitoredWeight) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(this._ELITEAPIMonitored.Player.Name, "Erase"); + } + else if ((monitoredEffect == StatusEffect.Slow) && (Settings.Default.monitoredSlow) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(this._ELITEAPIMonitored.Player.Name, "Erase"); + } + else if ((monitoredEffect == StatusEffect.Curse) && (Settings.Default.monitoredCurse) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Cursna) == 0)) + { + this.castSpell(this._ELITEAPIMonitored.Player.Name, "Cursna"); + } + else if ((monitoredEffect == StatusEffect.Curse2) && (Settings.Default.monitoredCurse2) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Cursna) == 0)) + { + this.castSpell(this._ELITEAPIMonitored.Player.Name, "Cursna"); + } + else if ((monitoredEffect == StatusEffect.Addle) && (Settings.Default.monitoredAddle) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(this._ELITEAPIMonitored.Player.Name, "Erase"); + } + else if ((monitoredEffect == StatusEffect.Bane) && (Settings.Default.monitoredBane) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Cursna) == 0)) + { + this.castSpell(this._ELITEAPIMonitored.Player.Name, "Cursna"); + } + else if ((monitoredEffect == StatusEffect.Plague) && (Settings.Default.monitoredPlague) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Viruna) == 0)) + { + this.castSpell(this._ELITEAPIMonitored.Player.Name, "Viruna"); + } + else if ((monitoredEffect == StatusEffect.Disease) && (Settings.Default.monitoredDisease) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Viruna) == 0)) + { + this.castSpell(this._ELITEAPIMonitored.Player.Name, "Viruna"); + } + else if ((monitoredEffect == StatusEffect.Burn) && (Settings.Default.monitoredBurn) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(this._ELITEAPIMonitored.Player.Name, "Erase"); + } + else if ((monitoredEffect == StatusEffect.Frost) && (Settings.Default.monitoredFrost) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(this._ELITEAPIMonitored.Player.Name, "Erase"); + } + else if ((monitoredEffect == StatusEffect.Choke) && (Settings.Default.monitoredChoke) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(this._ELITEAPIMonitored.Player.Name, "Erase"); + } + else if ((monitoredEffect == StatusEffect.Rasp) && (Settings.Default.monitoredRasp) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(this._ELITEAPIMonitored.Player.Name, "Erase"); + } + else if ((monitoredEffect == StatusEffect.Shock) && (Settings.Default.monitoredShock) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(this._ELITEAPIMonitored.Player.Name, "Erase"); + } + else if ((monitoredEffect == StatusEffect.Drown) && (Settings.Default.monitoredDrown) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(this._ELITEAPIMonitored.Player.Name, "Erase"); + } + else if ((monitoredEffect == StatusEffect.Dia) && (Settings.Default.monitoredDia) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(this._ELITEAPIMonitored.Player.Name, "Erase"); + } + else if ((monitoredEffect == StatusEffect.Bio) && (Settings.Default.monitoredBio) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(this._ELITEAPIMonitored.Player.Name, "Erase"); + } + else if ((monitoredEffect == StatusEffect.STR_Down) && (Settings.Default.monitoredStrDown) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(this._ELITEAPIMonitored.Player.Name, "Erase"); + } + else if ((monitoredEffect == StatusEffect.DEX_Down) && (Settings.Default.monitoredDexDown) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(this._ELITEAPIMonitored.Player.Name, "Erase"); + } + else if ((monitoredEffect == StatusEffect.VIT_Down) && (Settings.Default.monitoredVitDown) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(this._ELITEAPIMonitored.Player.Name, "Erase"); + } + else if ((monitoredEffect == StatusEffect.AGI_Down) && (Settings.Default.monitoredAgiDown) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(this._ELITEAPIMonitored.Player.Name, "Erase"); + } + else if ((monitoredEffect == StatusEffect.INT_Down) && (Settings.Default.monitoredIntDown) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(this._ELITEAPIMonitored.Player.Name, "Erase"); + } + else if ((monitoredEffect == StatusEffect.MND_Down) && (Settings.Default.monitoredMndDown) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(this._ELITEAPIMonitored.Player.Name, "Erase"); + } + else if ((monitoredEffect == StatusEffect.CHR_Down) && (Settings.Default.monitoredChrDown) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(this._ELITEAPIMonitored.Player.Name, "Erase"); + } + else if ((monitoredEffect == StatusEffect.Max_HP_Down) && (Settings.Default.monitoredMaxHpDown) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(this._ELITEAPIMonitored.Player.Name, "Erase"); + } + else if ((monitoredEffect == StatusEffect.Max_MP_Down) && (Settings.Default.monitoredMaxMpDown) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(this._ELITEAPIMonitored.Player.Name, "Erase"); + } + else if ((monitoredEffect == StatusEffect.Accuracy_Down) && (Settings.Default.monitoredAccuracyDown) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(this._ELITEAPIMonitored.Player.Name, "Erase"); + } + else if ((monitoredEffect == StatusEffect.Evasion_Down) && (Settings.Default.monitoredEvasionDown) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(this._ELITEAPIMonitored.Player.Name, "Erase"); + } + else if ((monitoredEffect == StatusEffect.Defense_Down) && (Settings.Default.monitoredDefenseDown) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(this._ELITEAPIMonitored.Player.Name, "Erase"); + } + else if ((monitoredEffect == StatusEffect.Flash) && (Settings.Default.monitoredFlash) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(this._ELITEAPIMonitored.Player.Name, "Erase"); + } + else if ((monitoredEffect == StatusEffect.Magic_Acc_Down) && (Settings.Default.monitoredMagicAccDown) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(this._ELITEAPIMonitored.Player.Name, "Erase"); + } + else if ((monitoredEffect == StatusEffect.Magic_Atk_Down) && (Settings.Default.monitoredMagicAtkDown) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(this._ELITEAPIMonitored.Player.Name, "Erase"); + } + else if ((monitoredEffect == StatusEffect.Helix) && (Settings.Default.monitoredHelix) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(this._ELITEAPIMonitored.Player.Name, "Erase"); + } + else if ((monitoredEffect == StatusEffect.Max_TP_Down) && (Settings.Default.monitoredMaxTpDown) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(this._ELITEAPIMonitored.Player.Name, "Erase"); + } + else if ((monitoredEffect == StatusEffect.Requiem) && (Settings.Default.monitoredRequiem) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(this._ELITEAPIMonitored.Player.Name, "Erase"); + } + else if ((monitoredEffect == StatusEffect.Elegy) && (Settings.Default.monitoredElegy) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(this._ELITEAPIMonitored.Player.Name, "Erase"); + } + else if ((monitoredEffect == StatusEffect.Threnody) && (Settings.Default.monitoredThrenody) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Erase) == 0)) + { + this.castSpell(this._ELITEAPIMonitored.Player.Name, "Erase"); + } } } // End Debuff Removal #endregion - #region "== PL Auto Buffs" + #region "== PL Auto Buffs" // PL Auto Buffs - if (!castingLock && _FFACEPL.Player.GetLoginStatus == LoginStatus.LoggedIn) + if (!this.castingLock && _ELITEAPIPL.Player.LoginStatus == (int)LoginStatus.LoggedIn) { - if ((Settings.Default.plBlink) && (!plStatusCheck(StatusEffect.Blink)) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Blink) == 0)) + if ((Settings.Default.plBlink) && (!this.plStatusCheck(StatusEffect.Blink)) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Blink) == 0)) { - castSpell("", "Blink"); + this.castSpell("", "Blink"); } - else if ((Settings.Default.plReraise) && (!plStatusCheck(StatusEffect.Reraise))) + else if ((Settings.Default.plReraise) && (!this.plStatusCheck(StatusEffect.Reraise))) { - if ((Settings.Default.plReraiseLevel == 1) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Reraise) == 0) && _FFACEPL.Player.MPCurrent > 150) + if ((Settings.Default.plReraiseLevel == 1) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Reraise) == 0) && _ELITEAPIPL.Player.MP > 150) { - castSpell("", "Reraise"); + this.castSpell("", "Reraise"); } - else if ((Settings.Default.plReraiseLevel == 2) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Reraise_II) == 0) && _FFACEPL.Player.MPCurrent > 150) + else if ((Settings.Default.plReraiseLevel == 2) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Reraise_II) == 0) && _ELITEAPIPL.Player.MP > 150) { - castSpell("", "Reraise II"); + this.castSpell("", "Reraise II"); } - else if ((Settings.Default.plReraiseLevel == 3) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Reraise_III) == 0) && _FFACEPL.Player.MPCurrent > 150) + else if ((Settings.Default.plReraiseLevel == 3) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Reraise_III) == 0) && _ELITEAPIPL.Player.MP > 150) { - castSpell("", "Reraise III"); + this.castSpell("", "Reraise III"); } } - else if ((Settings.Default.plRefresh) && (!plStatusCheck(StatusEffect.Refresh))) + else if ((Settings.Default.plRefresh) && (!this.plStatusCheck(StatusEffect.Refresh))) { - if ((Settings.Default.plRefreshLevel == 1) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Refresh) == 0)) + if ((Settings.Default.plRefreshLevel == 1) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Refresh) == 0)) { - castSpell("", "Refresh"); + this.castSpell("", "Refresh"); } - else if ((Settings.Default.plRefreshLevel == 2) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Refresh_II) == 0)) + else if ((Settings.Default.plRefreshLevel == 2) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Refresh_II) == 0)) { - castSpell("", "Refresh II"); + this.castSpell("", "Refresh II"); } } - else if ((Settings.Default.plStoneskin) && (!plStatusCheck(StatusEffect.Stoneskin)) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Stoneskin) == 0)) + else if ((Settings.Default.plStoneskin) && (!this.plStatusCheck(StatusEffect.Stoneskin)) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Stoneskin) == 0)) { - castSpell("", "Stoneskin"); + this.castSpell("", "Stoneskin"); } - else if ((Settings.Default.plShellra) && (!plStatusCheck(StatusEffect.Shell)) && CheckShellraLevelRecast()) + else if ((Settings.Default.plShellra) && (!this.plStatusCheck(StatusEffect.Shell)) && this.CheckShellraLevelRecast()) { - castSpell("", GetShellraLevel(Settings.Default.plShellralevel)); + this.castSpell("", this.GetShellraLevel(Settings.Default.plShellralevel)); } - else if ((Settings.Default.plProtectra) && (!plStatusCheck(StatusEffect.Protect)) && CheckProtectraLevelRecast()) + else if ((Settings.Default.plProtectra) && (!this.plStatusCheck(StatusEffect.Protect)) && this.CheckProtectraLevelRecast()) { - castSpell("", GetProtectraLevel(Settings.Default.plProtectralevel)); + this.castSpell("", this.GetProtectraLevel(Settings.Default.plProtectralevel)); } } // End PL Auto Buffs #endregion - // Auto Casting - #region "== Auto Haste" + // Auto Casting + #region "== Auto Haste" foreach (byte id in playerHpOrder) { - if ((autoHasteEnabled[id]) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Haste) == 0) && (_FFACEPL.Player.MPCurrent > Settings.Default.mpMinCastValue) && (!castingLock) && (castingPossible(id))) + if ((this.autoHasteEnabled[id]) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Haste) == 0) && (_ELITEAPIPL.Player.MP > Settings.Default.mpMinCastValue) && (!this.castingLock) && (this.castingPossible(id))) { - if ((_FFACEPL.Player.ID == _FFACEMonitored.PartyMember[id].ID)) + if ((_ELITEAPIPL.Party.GetPartyMember(0).ID == this._ELITEAPIMonitored.Party.GetPartyMembers()[id].ID)) { - if (!plStatusCheck(StatusEffect.Haste)) + if (!this.plStatusCheck(StatusEffect.Haste)) { - hastePlayer(id); + this.hastePlayer(id); } } - else if (_FFACEMonitored.Player.ID == _FFACEMonitored.PartyMember[id].ID) + else if (this._ELITEAPIMonitored.Party.GetPartyMember(0).ID == this._ELITEAPIMonitored.Party.GetPartyMembers()[id].ID) { - if (!monitoredStatusCheck(StatusEffect.Haste)) + if (!this.monitoredStatusCheck(StatusEffect.Haste)) { // Check if we are hasting only if fighting if (Settings.Default.AutoCastEngageCheckBox) { // if we are, check to make sure we are fighting before hasting - if (_FFACEMonitored.Player.Status == Status.Fighting) + if (this._ELITEAPIMonitored.Player.Status == (uint)Status.Fighting) { // Haste player - hastePlayer(id); + this.hastePlayer(id); } } // If we are not hasting only during fighting, cast haste else { - hastePlayer(id); + this.hastePlayer(id); } } } - else if ((_FFACEMonitored.PartyMember[id].HPCurrent > 0) && (playerHasteSpan[id].Minutes >= Settings.Default.autoHasteMinutes)) + else if ((this._ELITEAPIMonitored.Party.GetPartyMembers()[id].CurrentHP > 0) && (this.playerHasteSpan[id].Minutes >= Settings.Default.autoHasteMinutes)) { - hastePlayer(id); + this.hastePlayer(id); } } - #endregion + #endregion - #region "== Auto Haste II" + #region "== Auto Haste II" { - if ((autoHaste_IIEnabled[id]) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Haste_II) == 0) && (_FFACEPL.Player.MPCurrent > Settings.Default.mpMinCastValue) && (!castingLock) && (castingPossible(id))) + if ((this.autoHaste_IIEnabled[id]) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Haste_II) == 0) && (_ELITEAPIPL.Player.MP > Settings.Default.mpMinCastValue) && (!this.castingLock) && (this.castingPossible(id))) { - if ((_FFACEPL.Player.ID == _FFACEMonitored.PartyMember[id].ID)) + if ((_ELITEAPIPL.Party.GetPartyMember(0).ID == this._ELITEAPIMonitored.Party.GetPartyMembers()[id].ID)) { - if (!plStatusCheck(StatusEffect.Haste)) + if (!this.plStatusCheck(StatusEffect.Haste)) { - haste_IIPlayer(id); + this.haste_IIPlayer(id); } } - else if (_FFACEMonitored.Player.ID == _FFACEMonitored.PartyMember[id].ID) + else if (this._ELITEAPIMonitored.Party.GetPartyMember(0).ID == this._ELITEAPIMonitored.Party.GetPartyMembers()[id].ID) { - if (!monitoredStatusCheck(StatusEffect.Haste)) + if (!this.monitoredStatusCheck(StatusEffect.Haste)) { // Check if we are hasting only if fighting if (Settings.Default.AutoCastEngageCheckBox) { // if we are, check to make sure we are fighting before hasting - if (_FFACEMonitored.Player.Status == Status.Fighting) + if (this._ELITEAPIMonitored.Player.Status == (uint)Status.Fighting) { // Haste II player - haste_IIPlayer(id); + this.haste_IIPlayer(id); } } // If we are not hasting only during fighting, cast haste else { - haste_IIPlayer(id); + this.haste_IIPlayer(id); } } } - else if ((_FFACEMonitored.PartyMember[id].HPCurrent > 0) && (playerHaste_IISpan[id].Minutes >= Settings.Default.autoHasteMinutes)) + else if ((this._ELITEAPIMonitored.Party.GetPartyMembers()[id].CurrentHP > 0) && (this.playerHaste_IISpan[id].Minutes >= Settings.Default.autoHasteMinutes)) { - haste_IIPlayer(id); + this.haste_IIPlayer(id); } } - #endregion + #endregion - #region "== Auto Flurry " + #region "== Auto Flurry " { - if ((autoFlurryEnabled[id]) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Flurry) == 0) && (_FFACEPL.Player.MPCurrent > Settings.Default.mpMinCastValue) && (!castingLock) && (castingPossible(id))) + if ((this.autoFlurryEnabled[id]) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Flurry) == 0) && (_ELITEAPIPL.Player.MP > Settings.Default.mpMinCastValue) && (!this.castingLock) && (this.castingPossible(id))) { - if ((_FFACEPL.Player.ID == _FFACEMonitored.PartyMember[id].ID)) + if ((_ELITEAPIPL.Party.GetPartyMember(0).ID == this._ELITEAPIMonitored.Party.GetPartyMembers()[id].ID)) { - if (!plStatusCheck((StatusEffect)581)) + if (!this.plStatusCheck((StatusEffect)581)) { - FlurryPlayer(id); + this.FlurryPlayer(id); } } - else if (_FFACEMonitored.Player.ID == _FFACEMonitored.PartyMember[id].ID) + else if (this._ELITEAPIMonitored.Party.GetPartyMember(0).ID == this._ELITEAPIMonitored.Party.GetPartyMembers()[id].ID) { - if (!monitoredStatusCheck((StatusEffect)581)) + if (!this.monitoredStatusCheck((StatusEffect)581)) { // Check if we are flurring only if fighting if (Settings.Default.AutoCastEngageCheckBox) { // if we are, check to make sure we are fighting before flurring - if (_FFACEMonitored.Player.Status == Status.Fighting) + if (this._ELITEAPIMonitored.Player.Status == (uint)Status.Fighting) { // Flurry player - FlurryPlayer(id); + this.FlurryPlayer(id); } } // If we are not flurring only during fighting, cast flurry else { - FlurryPlayer(id); + this.FlurryPlayer(id); } } } - else if ((_FFACEMonitored.PartyMember[id].HPCurrent > 0) && (playerFlurrySpan[id].Minutes >= Settings.Default.autoHasteMinutes)) + else if ((this._ELITEAPIMonitored.Party.GetPartyMembers()[id].CurrentHP > 0) && (this.playerFlurrySpan[id].Minutes >= Settings.Default.autoHasteMinutes)) { - FlurryPlayer(id); + this.FlurryPlayer(id); } } - #endregion + #endregion - #region "== Auto Flurry II" + #region "== Auto Flurry II" { - if ((autoFlurry_IIEnabled[id]) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Flurry_II) == 0) && (_FFACEPL.Player.MPCurrent > Settings.Default.mpMinCastValue) && (!castingLock) && (castingPossible(id))) + if ((this.autoFlurry_IIEnabled[id]) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Flurry_II) == 0) && (_ELITEAPIPL.Player.MP > Settings.Default.mpMinCastValue) && (!this.castingLock) && (this.castingPossible(id))) { - if ((_FFACEPL.Player.ID == _FFACEMonitored.PartyMember[id].ID)) + if ((_ELITEAPIPL.Party.GetPartyMember(0).ID == this._ELITEAPIMonitored.Party.GetPartyMembers()[id].ID)) { - if (!plStatusCheck((StatusEffect)581)) + if (!this.plStatusCheck((StatusEffect)581)) { - Flurry_IIPlayer(id); + this.Flurry_IIPlayer(id); } } - else if (_FFACEMonitored.Player.ID == _FFACEMonitored.PartyMember[id].ID) + else if (this._ELITEAPIMonitored.Party.GetPartyMember(0).ID == this._ELITEAPIMonitored.Party.GetPartyMembers()[id].ID) { - if (!monitoredStatusCheck((StatusEffect)581)) + if (!this.monitoredStatusCheck((StatusEffect)581)) { // Check if we are flurring only if fighting if (Settings.Default.AutoCastEngageCheckBox) { // if we are, check to make sure we are fighting before flurring - if (_FFACEMonitored.Player.Status == Status.Fighting) + if (this._ELITEAPIMonitored.Player.Status == (uint)Status.Fighting) { // Flurry II player - Flurry_IIPlayer(id); + this.Flurry_IIPlayer(id); } } // If we are not flurring only during fighting, cast flurry else { - Flurry_IIPlayer(id); + this.Flurry_IIPlayer(id); } } } - else if ((_FFACEMonitored.PartyMember[id].HPCurrent > 0) && (playerFlurry_IISpan[id].Minutes >= Settings.Default.autoHasteMinutes)) + else if ((this._ELITEAPIMonitored.Party.GetPartyMembers()[id].CurrentHP > 0) && (this.playerFlurry_IISpan[id].Minutes >= Settings.Default.autoHasteMinutes)) { - Flurry_IIPlayer(id); + this.Flurry_IIPlayer(id); } } - #endregion + #endregion - #region "== Auto Shell IV & V" - if ((autoShell_IVEnabled[id]) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Shell_IV) == 0) && (_FFACEPL.Player.MPCurrent > Settings.Default.mpMinCastValue) && (!castingLock) && (castingPossible(id))) + #region "== Auto Shell IV & V" + if ((this.autoShell_IVEnabled[id]) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Shell_IV) == 0) && (_ELITEAPIPL.Player.MP > Settings.Default.mpMinCastValue) && (!this.castingLock) && (this.castingPossible(id))) { - if ((_FFACEPL.Player.ID == _FFACEMonitored.PartyMember[id].ID)) + if ((_ELITEAPIPL.Party.GetPartyMember(0).ID == this._ELITEAPIMonitored.Party.GetPartyMembers()[id].ID)) { - if (!plStatusCheck(StatusEffect.Shell)) + if (!this.plStatusCheck(StatusEffect.Shell)) { - shell_IVPlayer(id); + this.shell_IVPlayer(id); } } - else if (_FFACEMonitored.Player.ID == _FFACEMonitored.PartyMember[id].ID) + else if (this._ELITEAPIMonitored.Party.GetPartyMember(0).ID == this._ELITEAPIMonitored.Party.GetPartyMembers()[id].ID) { - if (!monitoredStatusCheck(StatusEffect.Shell)) + if (!this.monitoredStatusCheck(StatusEffect.Shell)) { if (Settings.Default.AutoCastEngageCheckBox) { - if (_FFACEMonitored.Player.Status == Status.Fighting) + if (this._ELITEAPIMonitored.Player.Status == (uint)Status.Fighting) { - shell_IVPlayer(id); + this.shell_IVPlayer(id); } } else { - shell_IVPlayer(id); + this.shell_IVPlayer(id); } } } - else if ((_FFACEMonitored.PartyMember[id].HPCurrent > 0) && (playerShell_IVSpan[id].Minutes >= Settings.Default.autoShell_IVMinutes)) + else if ((this._ELITEAPIMonitored.Party.GetPartyMembers()[id].CurrentHP > 0) && (this.playerShell_IVSpan[id].Minutes >= Settings.Default.autoShell_IVMinutes)) { - shell_IVPlayer(id); + this.shell_IVPlayer(id); } } - if ((autoShell_VEnabled[id]) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Shell_V) == 0) && (_FFACEPL.Player.MPCurrent > Settings.Default.mpMinCastValue) && (!castingLock) && (castingPossible(id))) + if ((this.autoShell_VEnabled[id]) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Shell_V) == 0) && (_ELITEAPIPL.Player.MP > Settings.Default.mpMinCastValue) && (!this.castingLock) && (this.castingPossible(id))) { - if ((_FFACEPL.Player.ID == _FFACEMonitored.PartyMember[id].ID)) + if ((_ELITEAPIPL.Party.GetPartyMember(0).ID == this._ELITEAPIMonitored.Party.GetPartyMembers()[id].ID)) { - if (!plStatusCheck(StatusEffect.Shell)) + if (!this.plStatusCheck(StatusEffect.Shell)) { - shell_VPlayer(id); + this.shell_VPlayer(id); } } - else if (_FFACEMonitored.Player.ID == _FFACEMonitored.PartyMember[id].ID) + else if (this._ELITEAPIMonitored.Party.GetPartyMember(0).ID == this._ELITEAPIMonitored.Party.GetPartyMembers()[id].ID) { - if (!monitoredStatusCheck(StatusEffect.Shell)) + if (!this.monitoredStatusCheck(StatusEffect.Shell)) { if (Settings.Default.AutoCastEngageCheckBox) { - if (_FFACEMonitored.Player.Status == Status.Fighting) + if (this._ELITEAPIMonitored.Player.Status == (uint)Status.Fighting) { - shell_VPlayer(id); + this.shell_VPlayer(id); } } else { - shell_VPlayer(id); + this.shell_VPlayer(id); } } } - else if ((_FFACEMonitored.PartyMember[id].HPCurrent > 0) && (playerShell_VSpan[id].Minutes >= Settings.Default.autoShell_VMinutes)) + else if ((this._ELITEAPIMonitored.Party.GetPartyMembers()[id].CurrentHP > 0) && (this.playerShell_VSpan[id].Minutes >= Settings.Default.autoShell_VMinutes)) { - shell_VPlayer(id); + this.shell_VPlayer(id); } } #endregion - #region "== Auto Protect IV & V" - if ((autoProtect_IVEnabled[id]) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Protect_IV) == 0) && (_FFACEPL.Player.MPCurrent > Settings.Default.mpMinCastValue) && (!castingLock) && (castingPossible(id))) + #region "== Auto Protect IV & V" + if ((this.autoProtect_IVEnabled[id]) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Protect_IV) == 0) && (_ELITEAPIPL.Player.MP > Settings.Default.mpMinCastValue) && (!this.castingLock) && (this.castingPossible(id))) { - if ((_FFACEPL.Player.ID == _FFACEMonitored.PartyMember[id].ID)) + if ((_ELITEAPIPL.Party.GetPartyMember(0).ID == this._ELITEAPIMonitored.Party.GetPartyMembers()[id].ID)) { - if (!plStatusCheck(StatusEffect.Protect)) + if (!this.plStatusCheck(StatusEffect.Protect)) { - protect_IVPlayer(id); + this.protect_IVPlayer(id); } } - else if (_FFACEMonitored.Player.ID == _FFACEMonitored.PartyMember[id].ID) + else if (this._ELITEAPIMonitored.Party.GetPartyMember(0).ID == this._ELITEAPIMonitored.Party.GetPartyMembers()[id].ID) { - if (!monitoredStatusCheck(StatusEffect.Protect)) + if (!this.monitoredStatusCheck(StatusEffect.Protect)) { if (Settings.Default.AutoCastEngageCheckBox) { - if (_FFACEMonitored.Player.Status == Status.Fighting) + if (this._ELITEAPIMonitored.Player.Status == (uint)Status.Fighting) { - protect_IVPlayer(id); + this.protect_IVPlayer(id); } } else { - protect_IVPlayer(id); + this.protect_IVPlayer(id); } } } - else if ((_FFACEMonitored.PartyMember[id].HPCurrent > 0) && (playerProtect_IVSpan[id].Minutes >= Settings.Default.autoProtect_IVMinutes)) + else if ((this._ELITEAPIMonitored.Party.GetPartyMembers()[id].CurrentHP > 0) && (this.playerProtect_IVSpan[id].Minutes >= Settings.Default.autoProtect_IVMinutes)) { - protect_IVPlayer(id); + this.protect_IVPlayer(id); } } - if ((autoProtect_VEnabled[id]) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Protect_V) == 0) && (_FFACEPL.Player.MPCurrent > Settings.Default.mpMinCastValue) && (!castingLock) && (castingPossible(id))) + if ((this.autoProtect_VEnabled[id]) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Protect_V) == 0) && (_ELITEAPIPL.Player.MP > Settings.Default.mpMinCastValue) && (!this.castingLock) && (this.castingPossible(id))) { - if ((_FFACEPL.Player.ID == _FFACEMonitored.PartyMember[id].ID)) + if ((_ELITEAPIPL.Party.GetPartyMember(0).ID == this._ELITEAPIMonitored.Party.GetPartyMembers()[id].ID)) { - if (!plStatusCheck(StatusEffect.Protect)) + if (!this.plStatusCheck(StatusEffect.Protect)) { - protect_VPlayer(id); + this.protect_VPlayer(id); } } - else if (_FFACEMonitored.Player.ID == _FFACEMonitored.PartyMember[id].ID) + else if (this._ELITEAPIMonitored.Party.GetPartyMember(0).ID == this._ELITEAPIMonitored.Party.GetPartyMembers()[id].ID) { - if (!monitoredStatusCheck(StatusEffect.Protect)) + if (!this.monitoredStatusCheck(StatusEffect.Protect)) { if (Settings.Default.AutoCastEngageCheckBox) { - if (_FFACEMonitored.Player.Status == Status.Fighting) + if (this._ELITEAPIMonitored.Player.Status == (uint)Status.Fighting) { - protect_VPlayer(id); + this.protect_VPlayer(id); } } else { - protect_VPlayer(id); + this.protect_VPlayer(id); } } } - else if ((_FFACEMonitored.PartyMember[id].HPCurrent > 0) && (playerProtect_VSpan[id].Minutes >= Settings.Default.autoProtect_VMinutes)) + else if ((this._ELITEAPIMonitored.Party.GetPartyMembers()[id].CurrentHP > 0) && (this.playerProtect_VSpan[id].Minutes >= Settings.Default.autoProtect_VMinutes)) { - protect_VPlayer(id); + this.protect_VPlayer(id); } } #endregion - #region "== Auto Phalanx II" - if ((autoPhalanx_IIEnabled[id]) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Phalanx_II) == 0) && (_FFACEPL.Player.MPCurrent > Settings.Default.mpMinCastValue) && (!castingLock) && (castingPossible(id))) + #region "== Auto Phalanx II" + if ((this.autoPhalanx_IIEnabled[id]) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Phalanx_II) == 0) && (_ELITEAPIPL.Player.MP > Settings.Default.mpMinCastValue) && (!this.castingLock) && (this.castingPossible(id))) { - if ((_FFACEPL.Player.ID == _FFACEMonitored.PartyMember[id].ID)) + if ((_ELITEAPIPL.Party.GetPartyMember(0).ID == this._ELITEAPIMonitored.Party.GetPartyMembers()[id].ID)) { - if (!plStatusCheck(StatusEffect.Phalanx)) + if (!this.plStatusCheck(StatusEffect.Phalanx)) { - Phalanx_IIPlayer(id); + this.Phalanx_IIPlayer(id); } } - else if ((_FFACEMonitored.Player.ID == _FFACEMonitored.PartyMember[id].ID)) + else if ((this._ELITEAPIMonitored.Party.GetPartyMember(0).ID == this._ELITEAPIMonitored.Party.GetPartyMembers()[id].ID)) { - if (!monitoredStatusCheck(StatusEffect.Phalanx)) + if (!this.monitoredStatusCheck(StatusEffect.Phalanx)) { - Phalanx_IIPlayer(id); + this.Phalanx_IIPlayer(id); } } - else if ((_FFACEMonitored.PartyMember[id].HPCurrent > 0) && (playerPhalanx_IISpan[id].Minutes >= Settings.Default.autoPhalanxIIMinutes)) + else if ((this._ELITEAPIMonitored.Party.GetPartyMembers()[id].CurrentHP > 0) && (this.playerPhalanx_IISpan[id].Minutes >= Settings.Default.autoPhalanxIIMinutes)) { - Phalanx_IIPlayer(id); + this.Phalanx_IIPlayer(id); } } #endregion - #region "== Auto Regen IV & V" - if ((autoRegen_IVEnabled[id]) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Regen_IV) == 0) && (_FFACEPL.Player.MPCurrent > Settings.Default.mpMinCastValue) && (!castingLock) && (castingPossible(id))) + #region "== Auto Regen IV & V" + if ((this.autoRegen_IVEnabled[id]) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Regen_IV) == 0) && (_ELITEAPIPL.Player.MP > Settings.Default.mpMinCastValue) && (!this.castingLock) && (this.castingPossible(id))) { - if ((_FFACEPL.Player.ID == _FFACEMonitored.PartyMember[id].ID)) + if ((_ELITEAPIPL.Party.GetPartyMember(0).ID == this._ELITEAPIMonitored.Party.GetPartyMembers()[id].ID)) { - if (!plStatusCheck(StatusEffect.Regen)) + if (!this.plStatusCheck(StatusEffect.Regen)) { - Regen_IVPlayer(id); + this.Regen_IVPlayer(id); } } - else if (_FFACEMonitored.Player.ID == _FFACEMonitored.PartyMember[id].ID) + else if (this._ELITEAPIMonitored.Party.GetPartyMember(0).ID == this._ELITEAPIMonitored.Party.GetPartyMembers()[id].ID) { - if (!monitoredStatusCheck(StatusEffect.Regen)) + if (!this.monitoredStatusCheck(StatusEffect.Regen)) { if (Settings.Default.AutoCastEngageCheckBox) { - if (_FFACEMonitored.Player.Status == Status.Fighting) + if (this._ELITEAPIMonitored.Player.Status == (uint)Status.Fighting) { - Regen_IVPlayer(id); + this.Regen_IVPlayer(id); } } else { - Regen_IVPlayer(id); + this.Regen_IVPlayer(id); } } } - else if (_FFACEMonitored.PartyMember[id].HPCurrent > 0 - && (playerRegen_IVSpan[id].Equals(TimeSpan.FromMinutes((double)Settings.Default.autoRegenIVMinutes)) - || (playerRegen_IVSpan[id].CompareTo(TimeSpan.FromMinutes((double)Settings.Default.autoRegenIVMinutes)) == 1))) + else if (this._ELITEAPIMonitored.Party.GetPartyMembers()[id].CurrentHP > 0 + && (this.playerRegen_IVSpan[id].Equals(TimeSpan.FromMinutes((double)Settings.Default.autoRegenIVMinutes)) + || (this.playerRegen_IVSpan[id].CompareTo(TimeSpan.FromMinutes((double)Settings.Default.autoRegenIVMinutes)) == 1))) { - Regen_IVPlayer(id); + this.Regen_IVPlayer(id); } } - if ((autoRegen_VEnabled[id]) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Regen_V) == 0) && (_FFACEPL.Player.MPCurrent > Settings.Default.mpMinCastValue) && (!castingLock) && (castingPossible(id))) + if ((this.autoRegen_VEnabled[id]) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Regen_V) == 0) && (_ELITEAPIPL.Player.MP > Settings.Default.mpMinCastValue) && (!this.castingLock) && (this.castingPossible(id))) { - if ((_FFACEPL.Player.ID == _FFACEMonitored.PartyMember[id].ID)) + if ((_ELITEAPIPL.Party.GetPartyMember(0).ID == this._ELITEAPIMonitored.Party.GetPartyMembers()[id].ID)) { - if (!plStatusCheck(StatusEffect.Regen)) + if (!this.plStatusCheck(StatusEffect.Regen)) { - Regen_VPlayer(id); + this.Regen_VPlayer(id); } } - else if (_FFACEMonitored.Player.ID == _FFACEMonitored.PartyMember[id].ID) + else if (this._ELITEAPIMonitored.Party.GetPartyMember(0).ID == this._ELITEAPIMonitored.Party.GetPartyMembers()[id].ID) { - if (!monitoredStatusCheck(StatusEffect.Regen)) + if (!this.monitoredStatusCheck(StatusEffect.Regen)) { if (Settings.Default.AutoCastEngageCheckBox) { - if (_FFACEMonitored.Player.Status == Status.Fighting) + if (this._ELITEAPIMonitored.Player.Status == (uint)Status.Fighting) { - Regen_VPlayer(id); + this.Regen_VPlayer(id); } } else { - Regen_VPlayer(id); + this.Regen_VPlayer(id); } } } - else if (_FFACEMonitored.PartyMember[id].HPCurrent > 0 - && (playerRegen_VSpan[id].Equals(TimeSpan.FromMinutes((double)Settings.Default.autoRegenVMinutes)) - || (playerRegen_VSpan[id].CompareTo(TimeSpan.FromMinutes((double)Settings.Default.autoRegenVMinutes)) == 1))) + else if (this._ELITEAPIMonitored.Party.GetPartyMembers()[id].CurrentHP > 0 + && (this.playerRegen_VSpan[id].Equals(TimeSpan.FromMinutes((double)Settings.Default.autoRegenVMinutes)) + || (this.playerRegen_VSpan[id].CompareTo(TimeSpan.FromMinutes((double)Settings.Default.autoRegenVMinutes)) == 1))) { - Regen_VPlayer(id); + this.Regen_VPlayer(id); } } #endregion - #region "== Auto Refresh & II" - if ((autoRefreshEnabled[id]) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Refresh) == 0) && (_FFACEPL.Player.MPCurrent > Settings.Default.mpMinCastValue) && (!castingLock) && (castingPossible(id))) + #region "== Auto Refresh & II" + if ((this.autoRefreshEnabled[id]) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Refresh) == 0) && (_ELITEAPIPL.Player.MP > Settings.Default.mpMinCastValue) && (!this.castingLock) && (this.castingPossible(id))) { - if ((_FFACEPL.Player.ID == _FFACEMonitored.PartyMember[id].ID)) + if ((_ELITEAPIPL.Party.GetPartyMember(0).ID == this._ELITEAPIMonitored.Party.GetPartyMembers()[id].ID)) { - if (!plStatusCheck(StatusEffect.Refresh)) + if (!this.plStatusCheck(StatusEffect.Refresh)) { - RefreshPlayer(id); + this.RefreshPlayer(id); } } - else if ((_FFACEMonitored.Player.ID == _FFACEMonitored.PartyMember[id].ID)) + else if ((this._ELITEAPIMonitored.Party.GetPartyMember(0).ID == this._ELITEAPIMonitored.Party.GetPartyMembers()[id].ID)) { - if (!monitoredStatusCheck(StatusEffect.Refresh)) + if (!this.monitoredStatusCheck(StatusEffect.Refresh)) { - RefreshPlayer(id); + this.RefreshPlayer(id); } } - else if (_FFACEMonitored.PartyMember[id].HPCurrent > 0 - && (playerRefreshSpan[id].Equals(TimeSpan.FromMinutes((double)Settings.Default.autoRefreshMinutes)) - || (playerRefreshSpan[id].CompareTo(TimeSpan.FromMinutes((double)Settings.Default.autoRefreshMinutes)) == 1))) + else if (this._ELITEAPIMonitored.Party.GetPartyMembers()[id].CurrentHP > 0 + && (this.playerRefreshSpan[id].Equals(TimeSpan.FromMinutes((double)Settings.Default.autoRefreshMinutes)) + || (this.playerRefreshSpan[id].CompareTo(TimeSpan.FromMinutes((double)Settings.Default.autoRefreshMinutes)) == 1))) { - RefreshPlayer(id); + this.RefreshPlayer(id); } } - if ((autoRefresh_IIEnabled[id]) && (_FFACEPL.Timer.GetSpellRecast(SpellList.Refresh_II) == 0) && (_FFACEPL.Player.MPCurrent > Settings.Default.mpMinCastValue) && (!castingLock) && (castingPossible(id))) + if ((this.autoRefresh_IIEnabled[id]) && (_ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Refresh_II) == 0) && (_ELITEAPIPL.Player.MP > Settings.Default.mpMinCastValue) && (!this.castingLock) && (this.castingPossible(id))) { - if ((_FFACEPL.Player.ID == _FFACEMonitored.PartyMember[id].ID)) + if ((_ELITEAPIPL.Party.GetPartyMember(0).ID == this._ELITEAPIMonitored.Party.GetPartyMembers()[id].ID)) { - if (!plStatusCheck(StatusEffect.Refresh)) + if (!this.plStatusCheck(StatusEffect.Refresh)) { - Refresh_IIPlayer(id); + this.Refresh_IIPlayer(id); } } - else if ((_FFACEMonitored.Player.ID == _FFACEMonitored.PartyMember[id].ID)) + else if ((this._ELITEAPIMonitored.Party.GetPartyMember(0).ID == this._ELITEAPIMonitored.Party.GetPartyMembers()[id].ID)) { - if (!monitoredStatusCheck(StatusEffect.Refresh)) + if (!this.monitoredStatusCheck(StatusEffect.Refresh)) { - Refresh_IIPlayer(id); + this.Refresh_IIPlayer(id); } } - else if (_FFACEMonitored.PartyMember[id].HPCurrent > 0 - && (playerRefresh_IISpan[id].Equals(TimeSpan.FromMinutes((double)Settings.Default.autoRefreshIIMinutes)) - || (playerRefresh_IISpan[id].CompareTo(TimeSpan.FromMinutes((double)Settings.Default.autoRefreshIIMinutes)) == 1))) + else if (this._ELITEAPIMonitored.Party.GetPartyMembers()[id].CurrentHP > 0 + && (this.playerRefresh_IISpan[id].Equals(TimeSpan.FromMinutes((double)Settings.Default.autoRefreshIIMinutes)) + || (this.playerRefresh_IISpan[id].CompareTo(TimeSpan.FromMinutes((double)Settings.Default.autoRefreshIIMinutes)) == 1))) { - Refresh_IIPlayer(id); + this.Refresh_IIPlayer(id); } } } - #endregion + #endregion + - - // so PL job abilities are in order - #region "== All other Job Abilities" - if (!castingLock && !plStatusCheck(StatusEffect.Amnesia)) + // so PL job abilities are in order + #region "== All other Job Abilities" + if (!this.castingLock && !this.plStatusCheck(StatusEffect.Amnesia)) { - if ((Settings.Default.afflatusSolice) && (!plStatusCheck(StatusEffect.Afflatus_Solace)) && (_FFACEPL.Timer.GetAbilityRecast(AbilityList.Afflatus_Solace) == 0)) + if ((Settings.Default.afflatusSolice) && (!this.plStatusCheck(StatusEffect.Afflatus_Solace)) && (_ELITEAPIPL.Recast.GetAbilityRecast((int)AbilityList.Afflatus_Solace) == 0)) { - _FFACEPL.Windower.SendString("/ja \"Afflatus Solace\" "); - ActionLockMethod(); + _ELITEAPIPL.ThirdParty.SendString("/ja \"Afflatus Solace\" "); + this.ActionLockMethod(); } - else if ((Settings.Default.afflatusMisery) && (!plStatusCheck(StatusEffect.Afflatus_Misery)) && (_FFACEPL.Timer.GetAbilityRecast(AbilityList.Afflatus_Misery) == 0)) + else if ((Settings.Default.afflatusMisery) && (!this.plStatusCheck(StatusEffect.Afflatus_Misery)) && (_ELITEAPIPL.Recast.GetAbilityRecast((int)AbilityList.Afflatus_Misery) == 0)) { - _FFACEPL.Windower.SendString("/ja \"Afflatus Misery\" "); - ActionLockMethod(); + _ELITEAPIPL.ThirdParty.SendString("/ja \"Afflatus Misery\" "); + this.ActionLockMethod(); } - else if ((Settings.Default.Composure) && (!plStatusCheck(StatusEffect.Composure)) && (_FFACEPL.Timer.GetAbilityRecast(AbilityList.Composure) == 0)) + else if ((Settings.Default.Composure) && (!this.plStatusCheck(StatusEffect.Composure)) && (_ELITEAPIPL.Recast.GetAbilityRecast((int)AbilityList.Composure) == 0)) { - _FFACEPL.Windower.SendString("/ja \"Composure\" "); - ActionLockMethod(); + _ELITEAPIPL.ThirdParty.SendString("/ja \"Composure\" "); + this.ActionLockMethod(); } - else if ((Settings.Default.lightArts) && (!plStatusCheck(StatusEffect.Light_Arts)) && (!plStatusCheck(StatusEffect.Addendum_White)) && (_FFACEPL.Timer.GetAbilityRecast(AbilityList.Light_Arts) == 0)) + else if ((Settings.Default.lightArts) && (!this.plStatusCheck(StatusEffect.Light_Arts)) && (!this.plStatusCheck(StatusEffect.Addendum_White)) && (_ELITEAPIPL.Recast.GetAbilityRecast((int)AbilityList.Light_Arts) == 0)) { - _FFACEPL.Windower.SendString("/ja \"Light Arts\" "); - ActionLockMethod(); + _ELITEAPIPL.ThirdParty.SendString("/ja \"Light Arts\" "); + this.ActionLockMethod(); } - else if ((Settings.Default.addWhite) && (!plStatusCheck(StatusEffect.Addendum_White)) && (_FFACEPL.Timer.GetAbilityRecast(AbilityList.Stratagems) == 0)) + else if ((Settings.Default.addWhite) && (!this.plStatusCheck(StatusEffect.Addendum_White)) && (_ELITEAPIPL.Recast.GetAbilityRecast((int)AbilityList.Stratagems) == 0)) { - _FFACEPL.Windower.SendString("/ja \"Addendum: White\" "); - ActionLockMethod(); + _ELITEAPIPL.ThirdParty.SendString("/ja \"Addendum: White\" "); + this.ActionLockMethod(); } - else if ((Settings.Default.sublimation) && (!plStatusCheck(StatusEffect.Sublimation_Activated)) && (!plStatusCheck(StatusEffect.Sublimation_Complete)) && (_FFACEPL.Timer.GetAbilityRecast(AbilityList.Sublimation) == 0)) + else if ((Settings.Default.sublimation) && (!this.plStatusCheck(StatusEffect.Sublimation_Activated)) && (!this.plStatusCheck(StatusEffect.Sublimation_Complete)) && (_ELITEAPIPL.Recast.GetAbilityRecast((int)AbilityList.Sublimation) == 0)) { - _FFACEPL.Windower.SendString("/ja \"Sublimation\" "); - ActionLockMethod(); + _ELITEAPIPL.ThirdParty.SendString("/ja \"Sublimation\" "); + this.ActionLockMethod(); } - else if ((Settings.Default.sublimation) && ((_FFACEPL.Player.MPMax - _FFACEPL.Player.MPCurrent) > (_FFACEPL.Player.HPMax * .4)) && (plStatusCheck(StatusEffect.Sublimation_Complete)) && (_FFACEPL.Timer.GetAbilityRecast(AbilityList.Sublimation) == 0)) + else if ((Settings.Default.sublimation) && ((_ELITEAPIPL.Player.MPMax - _ELITEAPIPL.Player.MP) > (_ELITEAPIPL.Player.HPMax * .4)) && (this.plStatusCheck(StatusEffect.Sublimation_Complete)) && (_ELITEAPIPL.Recast.GetAbilityRecast((int)AbilityList.Sublimation) == 0)) { - _FFACEPL.Windower.SendString("/ja \"Sublimation\" "); - ActionLockMethod(); + _ELITEAPIPL.ThirdParty.SendString("/ja \"Sublimation\" "); + this.ActionLockMethod(); } } } @@ -2417,10 +3784,10 @@ private void actionTimer_Tick(object sender, EventArgs e) } } } - #endregion + #endregion #region "== Get Shellra & Protectra level" - private string GetShellraLevel (decimal p) + private string GetShellraLevel(decimal p) { switch ((int)p) { @@ -2439,7 +3806,7 @@ private string GetShellraLevel (decimal p) } } - private string GetProtectraLevel (decimal p) + private string GetProtectraLevel(decimal p) { switch ((int)p) { @@ -2462,7 +3829,7 @@ private string GetProtectraLevel (decimal p) #region "== settingsToolStripMenuItem (settings Tab)" private void settingsToolStripMenuItem_Click(object sender, EventArgs e) { - Form2 settings = new Form2(); + var settings = new Form2(); settings.Show(); } #endregion @@ -2470,701 +3837,701 @@ private void settingsToolStripMenuItem_Click(object sender, EventArgs e) #region "== playerOptionsButtons (MENU Button)" private void player0optionsButton_Click(object sender, EventArgs e) { - playerOptionsSelected = 0; - autoHasteToolStripMenuItem.Checked = autoHasteEnabled[0]; - autoHasteIIToolStripMenuItem.Checked = autoHaste_IIEnabled[0]; - autoFlurryToolStripMenuItem.Checked = autoFlurryEnabled[0]; - autoFlurryIIToolStripMenuItem.Checked = autoFlurry_IIEnabled[0]; - autoProtectIVToolStripMenuItem1.Checked = autoProtect_IVEnabled[0]; - autoProtectVToolStripMenuItem1.Checked = autoProtect_VEnabled[0]; - autoShellIVToolStripMenuItem.Checked = autoShell_IVEnabled[0]; - autoShellVToolStripMenuItem.Checked = autoShell_VEnabled[0]; - playerOptions.Show(party0, new Point(0, 0)); - } - + this.playerOptionsSelected = 0; + this.autoHasteToolStripMenuItem.Checked = this.autoHasteEnabled[0]; + this.autoHasteIIToolStripMenuItem.Checked = this.autoHaste_IIEnabled[0]; + this.autoFlurryToolStripMenuItem.Checked = this.autoFlurryEnabled[0]; + this.autoFlurryIIToolStripMenuItem.Checked = this.autoFlurry_IIEnabled[0]; + this.autoProtectIVToolStripMenuItem1.Checked = this.autoProtect_IVEnabled[0]; + this.autoProtectVToolStripMenuItem1.Checked = this.autoProtect_VEnabled[0]; + this.autoShellIVToolStripMenuItem.Checked = this.autoShell_IVEnabled[0]; + this.autoShellVToolStripMenuItem.Checked = this.autoShell_VEnabled[0]; + this.playerOptions.Show(this.party0, new Point(0, 0)); + } + private void player1optionsButton_Click(object sender, EventArgs e) { - playerOptionsSelected = 1; - autoHasteToolStripMenuItem.Checked = autoHasteEnabled[1]; - autoHasteIIToolStripMenuItem.Checked = autoHaste_IIEnabled[1]; - autoFlurryToolStripMenuItem.Checked = autoFlurryEnabled[1]; - autoFlurryIIToolStripMenuItem.Checked = autoFlurry_IIEnabled[1]; - autoProtectIVToolStripMenuItem1.Checked = autoProtect_IVEnabled[1]; - autoProtectVToolStripMenuItem1.Checked = autoProtect_VEnabled[1]; - autoShellIVToolStripMenuItem.Checked = autoShell_IVEnabled[1]; - autoShellVToolStripMenuItem.Checked = autoShell_VEnabled[1]; - playerOptions.Show(party0, new Point(0, 0)); + this.playerOptionsSelected = 1; + this.autoHasteToolStripMenuItem.Checked = this.autoHasteEnabled[1]; + this.autoHasteIIToolStripMenuItem.Checked = this.autoHaste_IIEnabled[1]; + this.autoFlurryToolStripMenuItem.Checked = this.autoFlurryEnabled[1]; + this.autoFlurryIIToolStripMenuItem.Checked = this.autoFlurry_IIEnabled[1]; + this.autoProtectIVToolStripMenuItem1.Checked = this.autoProtect_IVEnabled[1]; + this.autoProtectVToolStripMenuItem1.Checked = this.autoProtect_VEnabled[1]; + this.autoShellIVToolStripMenuItem.Checked = this.autoShell_IVEnabled[1]; + this.autoShellVToolStripMenuItem.Checked = this.autoShell_VEnabled[1]; + this.playerOptions.Show(this.party0, new Point(0, 0)); } private void player2optionsButton_Click(object sender, EventArgs e) { - playerOptionsSelected = 2; - autoHasteToolStripMenuItem.Checked = autoHasteEnabled[2]; - autoHasteIIToolStripMenuItem.Checked = autoHaste_IIEnabled[2]; - autoFlurryToolStripMenuItem.Checked = autoFlurryEnabled[2]; - autoFlurryIIToolStripMenuItem.Checked = autoFlurry_IIEnabled[2]; - autoProtectIVToolStripMenuItem1.Checked = autoProtect_IVEnabled[2]; - autoProtectVToolStripMenuItem1.Checked = autoProtect_VEnabled[2]; - autoShellIVToolStripMenuItem.Checked = autoShell_IVEnabled[2]; - autoShellVToolStripMenuItem.Checked = autoShell_VEnabled[2]; - playerOptions.Show(party0, new Point(0, 0)); + this.playerOptionsSelected = 2; + this.autoHasteToolStripMenuItem.Checked = this.autoHasteEnabled[2]; + this.autoHasteIIToolStripMenuItem.Checked = this.autoHaste_IIEnabled[2]; + this.autoFlurryToolStripMenuItem.Checked = this.autoFlurryEnabled[2]; + this.autoFlurryIIToolStripMenuItem.Checked = this.autoFlurry_IIEnabled[2]; + this.autoProtectIVToolStripMenuItem1.Checked = this.autoProtect_IVEnabled[2]; + this.autoProtectVToolStripMenuItem1.Checked = this.autoProtect_VEnabled[2]; + this.autoShellIVToolStripMenuItem.Checked = this.autoShell_IVEnabled[2]; + this.autoShellVToolStripMenuItem.Checked = this.autoShell_VEnabled[2]; + this.playerOptions.Show(this.party0, new Point(0, 0)); } private void player3optionsButton_Click(object sender, EventArgs e) { - playerOptionsSelected = 3; - autoHasteToolStripMenuItem.Checked = autoHasteEnabled[3]; - autoHasteIIToolStripMenuItem.Checked = autoHaste_IIEnabled[3]; - autoFlurryToolStripMenuItem.Checked = autoFlurryEnabled[3]; - autoFlurryIIToolStripMenuItem.Checked = autoFlurry_IIEnabled[3]; - autoProtectIVToolStripMenuItem1.Checked = autoProtect_IVEnabled[3]; - autoProtectVToolStripMenuItem1.Checked = autoProtect_VEnabled[3]; - autoShellIVToolStripMenuItem.Checked = autoShell_IVEnabled[3]; - autoShellVToolStripMenuItem.Checked = autoShell_VEnabled[3]; - playerOptions.Show(party0, new Point(0, 0)); + this.playerOptionsSelected = 3; + this.autoHasteToolStripMenuItem.Checked = this.autoHasteEnabled[3]; + this.autoHasteIIToolStripMenuItem.Checked = this.autoHaste_IIEnabled[3]; + this.autoFlurryToolStripMenuItem.Checked = this.autoFlurryEnabled[3]; + this.autoFlurryIIToolStripMenuItem.Checked = this.autoFlurry_IIEnabled[3]; + this.autoProtectIVToolStripMenuItem1.Checked = this.autoProtect_IVEnabled[3]; + this.autoProtectVToolStripMenuItem1.Checked = this.autoProtect_VEnabled[3]; + this.autoShellIVToolStripMenuItem.Checked = this.autoShell_IVEnabled[3]; + this.autoShellVToolStripMenuItem.Checked = this.autoShell_VEnabled[3]; + this.playerOptions.Show(this.party0, new Point(0, 0)); } private void player4optionsButton_Click(object sender, EventArgs e) { - playerOptionsSelected = 4; - autoHasteToolStripMenuItem.Checked = autoHasteEnabled[4]; - autoHasteIIToolStripMenuItem.Checked = autoHaste_IIEnabled[4]; - autoFlurryToolStripMenuItem.Checked = autoFlurryEnabled[4]; - autoFlurryIIToolStripMenuItem.Checked = autoFlurry_IIEnabled[4]; - autoProtectIVToolStripMenuItem1.Checked = autoProtect_IVEnabled[4]; - autoProtectVToolStripMenuItem1.Checked = autoProtect_VEnabled[4]; - autoShellIVToolStripMenuItem.Checked = autoShell_IVEnabled[4]; - autoShellVToolStripMenuItem.Checked = autoShell_VEnabled[4]; - playerOptions.Show(party0, new Point(0, 0)); + this.playerOptionsSelected = 4; + this.autoHasteToolStripMenuItem.Checked = this.autoHasteEnabled[4]; + this.autoHasteIIToolStripMenuItem.Checked = this.autoHaste_IIEnabled[4]; + this.autoFlurryToolStripMenuItem.Checked = this.autoFlurryEnabled[4]; + this.autoFlurryIIToolStripMenuItem.Checked = this.autoFlurry_IIEnabled[4]; + this.autoProtectIVToolStripMenuItem1.Checked = this.autoProtect_IVEnabled[4]; + this.autoProtectVToolStripMenuItem1.Checked = this.autoProtect_VEnabled[4]; + this.autoShellIVToolStripMenuItem.Checked = this.autoShell_IVEnabled[4]; + this.autoShellVToolStripMenuItem.Checked = this.autoShell_VEnabled[4]; + this.playerOptions.Show(this.party0, new Point(0, 0)); } private void player5optionsButton_Click(object sender, EventArgs e) { - playerOptionsSelected = 5; - autoHasteToolStripMenuItem.Checked = autoHasteEnabled[5]; - autoHasteIIToolStripMenuItem.Checked = autoHaste_IIEnabled[5]; - autoFlurryToolStripMenuItem.Checked = autoFlurryEnabled[5]; - autoFlurryIIToolStripMenuItem.Checked = autoFlurry_IIEnabled[5]; - autoProtectIVToolStripMenuItem1.Checked = autoProtect_IVEnabled[5]; - autoProtectVToolStripMenuItem1.Checked = autoProtect_VEnabled[5]; - autoShellIVToolStripMenuItem.Checked = autoShell_IVEnabled[5]; - autoShellVToolStripMenuItem.Checked = autoShell_VEnabled[5]; - playerOptions.Show(party0, new Point(0, 0)); + this.playerOptionsSelected = 5; + this.autoHasteToolStripMenuItem.Checked = this.autoHasteEnabled[5]; + this.autoHasteIIToolStripMenuItem.Checked = this.autoHaste_IIEnabled[5]; + this.autoFlurryToolStripMenuItem.Checked = this.autoFlurryEnabled[5]; + this.autoFlurryIIToolStripMenuItem.Checked = this.autoFlurry_IIEnabled[5]; + this.autoProtectIVToolStripMenuItem1.Checked = this.autoProtect_IVEnabled[5]; + this.autoProtectVToolStripMenuItem1.Checked = this.autoProtect_VEnabled[5]; + this.autoShellIVToolStripMenuItem.Checked = this.autoShell_IVEnabled[5]; + this.autoShellVToolStripMenuItem.Checked = this.autoShell_VEnabled[5]; + this.playerOptions.Show(this.party0, new Point(0, 0)); } private void player6optionsButton_Click(object sender, EventArgs e) { - playerOptionsSelected = 6; - autoHasteToolStripMenuItem.Checked = autoHasteEnabled[6]; - autoHasteIIToolStripMenuItem.Checked = autoHaste_IIEnabled[6]; - autoFlurryToolStripMenuItem.Checked = autoFlurryEnabled[6]; - autoFlurryIIToolStripMenuItem.Checked = autoFlurry_IIEnabled[6]; - autoProtectIVToolStripMenuItem1.Checked = autoProtect_IVEnabled[6]; - autoProtectVToolStripMenuItem1.Checked = autoProtect_VEnabled[6]; - autoShellIVToolStripMenuItem.Checked = autoShell_IVEnabled[6]; - autoShellVToolStripMenuItem.Checked = autoShell_VEnabled[6]; - playerOptions.Show(party1, new Point(0, 0)); + this.playerOptionsSelected = 6; + this.autoHasteToolStripMenuItem.Checked = this.autoHasteEnabled[6]; + this.autoHasteIIToolStripMenuItem.Checked = this.autoHaste_IIEnabled[6]; + this.autoFlurryToolStripMenuItem.Checked = this.autoFlurryEnabled[6]; + this.autoFlurryIIToolStripMenuItem.Checked = this.autoFlurry_IIEnabled[6]; + this.autoProtectIVToolStripMenuItem1.Checked = this.autoProtect_IVEnabled[6]; + this.autoProtectVToolStripMenuItem1.Checked = this.autoProtect_VEnabled[6]; + this.autoShellIVToolStripMenuItem.Checked = this.autoShell_IVEnabled[6]; + this.autoShellVToolStripMenuItem.Checked = this.autoShell_VEnabled[6]; + this.playerOptions.Show(this.party1, new Point(0, 0)); } private void player7optionsButton_Click(object sender, EventArgs e) { - playerOptionsSelected = 7; - autoHasteToolStripMenuItem.Checked = autoHasteEnabled[7]; - autoHasteIIToolStripMenuItem.Checked = autoHaste_IIEnabled[7]; - autoFlurryToolStripMenuItem.Checked = autoFlurryEnabled[7]; - autoFlurryIIToolStripMenuItem.Checked = autoFlurry_IIEnabled[7]; - autoProtectIVToolStripMenuItem1.Checked = autoProtect_IVEnabled[7]; - autoProtectVToolStripMenuItem1.Checked = autoProtect_VEnabled[7]; - autoShellIVToolStripMenuItem.Checked = autoShell_IVEnabled[7]; - autoShellVToolStripMenuItem.Checked = autoShell_VEnabled[7]; - playerOptions.Show(party1, new Point(0, 0)); + this.playerOptionsSelected = 7; + this.autoHasteToolStripMenuItem.Checked = this.autoHasteEnabled[7]; + this.autoHasteIIToolStripMenuItem.Checked = this.autoHaste_IIEnabled[7]; + this.autoFlurryToolStripMenuItem.Checked = this.autoFlurryEnabled[7]; + this.autoFlurryIIToolStripMenuItem.Checked = this.autoFlurry_IIEnabled[7]; + this.autoProtectIVToolStripMenuItem1.Checked = this.autoProtect_IVEnabled[7]; + this.autoProtectVToolStripMenuItem1.Checked = this.autoProtect_VEnabled[7]; + this.autoShellIVToolStripMenuItem.Checked = this.autoShell_IVEnabled[7]; + this.autoShellVToolStripMenuItem.Checked = this.autoShell_VEnabled[7]; + this.playerOptions.Show(this.party1, new Point(0, 0)); } private void player8optionsButton_Click(object sender, EventArgs e) { - playerOptionsSelected = 8; - autoHasteToolStripMenuItem.Checked = autoHasteEnabled[8]; - autoHasteIIToolStripMenuItem.Checked = autoHaste_IIEnabled[8]; - autoFlurryToolStripMenuItem.Checked = autoFlurryEnabled[8]; - autoFlurryIIToolStripMenuItem.Checked = autoFlurry_IIEnabled[8]; - autoProtectIVToolStripMenuItem1.Checked = autoProtect_IVEnabled[8]; - autoProtectVToolStripMenuItem1.Checked = autoProtect_VEnabled[8]; - autoShellIVToolStripMenuItem.Checked = autoShell_IVEnabled[8]; - autoShellVToolStripMenuItem.Checked = autoShell_VEnabled[8]; - playerOptions.Show(party1, new Point(0, 0)); + this.playerOptionsSelected = 8; + this.autoHasteToolStripMenuItem.Checked = this.autoHasteEnabled[8]; + this.autoHasteIIToolStripMenuItem.Checked = this.autoHaste_IIEnabled[8]; + this.autoFlurryToolStripMenuItem.Checked = this.autoFlurryEnabled[8]; + this.autoFlurryIIToolStripMenuItem.Checked = this.autoFlurry_IIEnabled[8]; + this.autoProtectIVToolStripMenuItem1.Checked = this.autoProtect_IVEnabled[8]; + this.autoProtectVToolStripMenuItem1.Checked = this.autoProtect_VEnabled[8]; + this.autoShellIVToolStripMenuItem.Checked = this.autoShell_IVEnabled[8]; + this.autoShellVToolStripMenuItem.Checked = this.autoShell_VEnabled[8]; + this.playerOptions.Show(this.party1, new Point(0, 0)); } private void player9optionsButton_Click(object sender, EventArgs e) { - playerOptionsSelected = 9; - autoHasteToolStripMenuItem.Checked = autoHasteEnabled[9]; - autoHasteIIToolStripMenuItem.Checked = autoHaste_IIEnabled[9]; - autoFlurryToolStripMenuItem.Checked = autoFlurryEnabled[9]; - autoFlurryIIToolStripMenuItem.Checked = autoFlurry_IIEnabled[9]; - autoProtectIVToolStripMenuItem1.Checked = autoProtect_IVEnabled[9]; - autoProtectVToolStripMenuItem1.Checked = autoProtect_VEnabled[9]; - autoShellIVToolStripMenuItem.Checked = autoShell_IVEnabled[9]; - autoShellVToolStripMenuItem.Checked = autoShell_VEnabled[9]; - playerOptions.Show(party1, new Point(0, 0)); + this.playerOptionsSelected = 9; + this.autoHasteToolStripMenuItem.Checked = this.autoHasteEnabled[9]; + this.autoHasteIIToolStripMenuItem.Checked = this.autoHaste_IIEnabled[9]; + this.autoFlurryToolStripMenuItem.Checked = this.autoFlurryEnabled[9]; + this.autoFlurryIIToolStripMenuItem.Checked = this.autoFlurry_IIEnabled[9]; + this.autoProtectIVToolStripMenuItem1.Checked = this.autoProtect_IVEnabled[9]; + this.autoProtectVToolStripMenuItem1.Checked = this.autoProtect_VEnabled[9]; + this.autoShellIVToolStripMenuItem.Checked = this.autoShell_IVEnabled[9]; + this.autoShellVToolStripMenuItem.Checked = this.autoShell_VEnabled[9]; + this.playerOptions.Show(this.party1, new Point(0, 0)); } private void player10optionsButton_Click(object sender, EventArgs e) { - playerOptionsSelected = 10; - autoHasteToolStripMenuItem.Checked = autoHasteEnabled[10]; - autoHasteIIToolStripMenuItem.Checked = autoHaste_IIEnabled[10]; - autoFlurryToolStripMenuItem.Checked = autoFlurryEnabled[10]; - autoFlurryIIToolStripMenuItem.Checked = autoFlurry_IIEnabled[10]; - autoProtectIVToolStripMenuItem1.Checked = autoProtect_IVEnabled[10]; - autoProtectVToolStripMenuItem1.Checked = autoProtect_VEnabled[10]; - autoShellIVToolStripMenuItem.Checked = autoShell_IVEnabled[10]; - autoShellVToolStripMenuItem.Checked = autoShell_VEnabled[10]; - playerOptions.Show(party1, new Point(0, 0)); + this.playerOptionsSelected = 10; + this.autoHasteToolStripMenuItem.Checked = this.autoHasteEnabled[10]; + this.autoHasteIIToolStripMenuItem.Checked = this.autoHaste_IIEnabled[10]; + this.autoFlurryToolStripMenuItem.Checked = this.autoFlurryEnabled[10]; + this.autoFlurryIIToolStripMenuItem.Checked = this.autoFlurry_IIEnabled[10]; + this.autoProtectIVToolStripMenuItem1.Checked = this.autoProtect_IVEnabled[10]; + this.autoProtectVToolStripMenuItem1.Checked = this.autoProtect_VEnabled[10]; + this.autoShellIVToolStripMenuItem.Checked = this.autoShell_IVEnabled[10]; + this.autoShellVToolStripMenuItem.Checked = this.autoShell_VEnabled[10]; + this.playerOptions.Show(this.party1, new Point(0, 0)); } private void player11optionsButton_Click(object sender, EventArgs e) { - playerOptionsSelected = 11; - autoHasteToolStripMenuItem.Checked = autoHasteEnabled[11]; - autoHasteIIToolStripMenuItem.Checked = autoHaste_IIEnabled[11]; - autoFlurryToolStripMenuItem.Checked = autoFlurryEnabled[11]; - autoFlurryIIToolStripMenuItem.Checked = autoFlurry_IIEnabled[11]; - autoProtectIVToolStripMenuItem1.Checked = autoProtect_IVEnabled[11]; - autoProtectVToolStripMenuItem1.Checked = autoProtect_VEnabled[11]; - autoShellIVToolStripMenuItem.Checked = autoShell_IVEnabled[11]; - autoShellVToolStripMenuItem.Checked = autoShell_VEnabled[11]; - playerOptions.Show(party1, new Point(0, 0)); + this.playerOptionsSelected = 11; + this.autoHasteToolStripMenuItem.Checked = this.autoHasteEnabled[11]; + this.autoHasteIIToolStripMenuItem.Checked = this.autoHaste_IIEnabled[11]; + this.autoFlurryToolStripMenuItem.Checked = this.autoFlurryEnabled[11]; + this.autoFlurryIIToolStripMenuItem.Checked = this.autoFlurry_IIEnabled[11]; + this.autoProtectIVToolStripMenuItem1.Checked = this.autoProtect_IVEnabled[11]; + this.autoProtectVToolStripMenuItem1.Checked = this.autoProtect_VEnabled[11]; + this.autoShellIVToolStripMenuItem.Checked = this.autoShell_IVEnabled[11]; + this.autoShellVToolStripMenuItem.Checked = this.autoShell_VEnabled[11]; + this.playerOptions.Show(this.party1, new Point(0, 0)); } private void player12optionsButton_Click(object sender, EventArgs e) { - playerOptionsSelected = 12; - autoHasteToolStripMenuItem.Checked = autoHasteEnabled[12]; - autoHasteIIToolStripMenuItem.Checked = autoHaste_IIEnabled[12]; - autoFlurryToolStripMenuItem.Checked = autoFlurryEnabled[12]; - autoFlurryIIToolStripMenuItem.Checked = autoFlurry_IIEnabled[12]; - autoProtectIVToolStripMenuItem1.Checked = autoProtect_IVEnabled[12]; - autoProtectVToolStripMenuItem1.Checked = autoProtect_VEnabled[12]; - autoShellIVToolStripMenuItem.Checked = autoShell_IVEnabled[12]; - autoShellVToolStripMenuItem.Checked = autoShell_VEnabled[12]; - playerOptions.Show(party2, new Point(0, 0)); + this.playerOptionsSelected = 12; + this.autoHasteToolStripMenuItem.Checked = this.autoHasteEnabled[12]; + this.autoHasteIIToolStripMenuItem.Checked = this.autoHaste_IIEnabled[12]; + this.autoFlurryToolStripMenuItem.Checked = this.autoFlurryEnabled[12]; + this.autoFlurryIIToolStripMenuItem.Checked = this.autoFlurry_IIEnabled[12]; + this.autoProtectIVToolStripMenuItem1.Checked = this.autoProtect_IVEnabled[12]; + this.autoProtectVToolStripMenuItem1.Checked = this.autoProtect_VEnabled[12]; + this.autoShellIVToolStripMenuItem.Checked = this.autoShell_IVEnabled[12]; + this.autoShellVToolStripMenuItem.Checked = this.autoShell_VEnabled[12]; + this.playerOptions.Show(this.party2, new Point(0, 0)); } private void player13optionsButton_Click(object sender, EventArgs e) { - playerOptionsSelected = 13; - autoHasteToolStripMenuItem.Checked = autoHasteEnabled[13]; - autoHasteIIToolStripMenuItem.Checked = autoHaste_IIEnabled[13]; - autoFlurryToolStripMenuItem.Checked = autoFlurryEnabled[13]; - autoFlurryIIToolStripMenuItem.Checked = autoFlurry_IIEnabled[13]; - autoProtectIVToolStripMenuItem1.Checked = autoProtect_IVEnabled[13]; - autoProtectVToolStripMenuItem1.Checked = autoProtect_VEnabled[13]; - autoShellIVToolStripMenuItem.Checked = autoShell_IVEnabled[13]; - autoShellVToolStripMenuItem.Checked = autoShell_VEnabled[13]; - playerOptions.Show(party2, new Point(0, 0)); + this.playerOptionsSelected = 13; + this.autoHasteToolStripMenuItem.Checked = this.autoHasteEnabled[13]; + this.autoHasteIIToolStripMenuItem.Checked = this.autoHaste_IIEnabled[13]; + this.autoFlurryToolStripMenuItem.Checked = this.autoFlurryEnabled[13]; + this.autoFlurryIIToolStripMenuItem.Checked = this.autoFlurry_IIEnabled[13]; + this.autoProtectIVToolStripMenuItem1.Checked = this.autoProtect_IVEnabled[13]; + this.autoProtectVToolStripMenuItem1.Checked = this.autoProtect_VEnabled[13]; + this.autoShellIVToolStripMenuItem.Checked = this.autoShell_IVEnabled[13]; + this.autoShellVToolStripMenuItem.Checked = this.autoShell_VEnabled[13]; + this.playerOptions.Show(this.party2, new Point(0, 0)); } private void player14optionsButton_Click(object sender, EventArgs e) { - playerOptionsSelected = 14; - autoHasteToolStripMenuItem.Checked = autoHasteEnabled[14]; - autoHasteIIToolStripMenuItem.Checked = autoHaste_IIEnabled[14]; - autoFlurryToolStripMenuItem.Checked = autoFlurryEnabled[14]; - autoFlurryIIToolStripMenuItem.Checked = autoFlurry_IIEnabled[14]; - autoProtectIVToolStripMenuItem1.Checked = autoProtect_IVEnabled[14]; - autoProtectVToolStripMenuItem1.Checked = autoProtect_VEnabled[14]; - autoShellIVToolStripMenuItem.Checked = autoShell_IVEnabled[14]; - autoShellVToolStripMenuItem.Checked = autoShell_VEnabled[14]; - playerOptions.Show(party2, new Point(0, 0)); + this.playerOptionsSelected = 14; + this.autoHasteToolStripMenuItem.Checked = this.autoHasteEnabled[14]; + this.autoHasteIIToolStripMenuItem.Checked = this.autoHaste_IIEnabled[14]; + this.autoFlurryToolStripMenuItem.Checked = this.autoFlurryEnabled[14]; + this.autoFlurryIIToolStripMenuItem.Checked = this.autoFlurry_IIEnabled[14]; + this.autoProtectIVToolStripMenuItem1.Checked = this.autoProtect_IVEnabled[14]; + this.autoProtectVToolStripMenuItem1.Checked = this.autoProtect_VEnabled[14]; + this.autoShellIVToolStripMenuItem.Checked = this.autoShell_IVEnabled[14]; + this.autoShellVToolStripMenuItem.Checked = this.autoShell_VEnabled[14]; + this.playerOptions.Show(this.party2, new Point(0, 0)); } private void player15optionsButton_Click(object sender, EventArgs e) { - playerOptionsSelected = 15; - autoHasteToolStripMenuItem.Checked = autoHasteEnabled[15]; - autoHasteIIToolStripMenuItem.Checked = autoHaste_IIEnabled[15]; - autoFlurryToolStripMenuItem.Checked = autoFlurryEnabled[15]; - autoFlurryIIToolStripMenuItem.Checked = autoFlurry_IIEnabled[15]; - autoProtectIVToolStripMenuItem1.Checked = autoProtect_IVEnabled[15]; - autoProtectVToolStripMenuItem1.Checked = autoProtect_VEnabled[15]; - autoShellIVToolStripMenuItem.Checked = autoShell_IVEnabled[15]; - autoShellVToolStripMenuItem.Checked = autoShell_VEnabled[15]; - playerOptions.Show(party2, new Point(0, 0)); + this.playerOptionsSelected = 15; + this.autoHasteToolStripMenuItem.Checked = this.autoHasteEnabled[15]; + this.autoHasteIIToolStripMenuItem.Checked = this.autoHaste_IIEnabled[15]; + this.autoFlurryToolStripMenuItem.Checked = this.autoFlurryEnabled[15]; + this.autoFlurryIIToolStripMenuItem.Checked = this.autoFlurry_IIEnabled[15]; + this.autoProtectIVToolStripMenuItem1.Checked = this.autoProtect_IVEnabled[15]; + this.autoProtectVToolStripMenuItem1.Checked = this.autoProtect_VEnabled[15]; + this.autoShellIVToolStripMenuItem.Checked = this.autoShell_IVEnabled[15]; + this.autoShellVToolStripMenuItem.Checked = this.autoShell_VEnabled[15]; + this.playerOptions.Show(this.party2, new Point(0, 0)); } private void player16optionsButton_Click(object sender, EventArgs e) { - playerOptionsSelected = 16; - autoHasteToolStripMenuItem.Checked = autoHasteEnabled[16]; - autoHasteIIToolStripMenuItem.Checked = autoHaste_IIEnabled[16]; - autoFlurryToolStripMenuItem.Checked = autoFlurryEnabled[16]; - autoFlurryIIToolStripMenuItem.Checked = autoFlurry_IIEnabled[16]; - autoProtectIVToolStripMenuItem1.Checked = autoProtect_IVEnabled[16]; - autoProtectVToolStripMenuItem1.Checked = autoProtect_VEnabled[16]; - autoShellIVToolStripMenuItem.Checked = autoShell_IVEnabled[16]; - autoShellVToolStripMenuItem.Checked = autoShell_VEnabled[16]; - playerOptions.Show(party2, new Point(0, 0)); + this.playerOptionsSelected = 16; + this.autoHasteToolStripMenuItem.Checked = this.autoHasteEnabled[16]; + this.autoHasteIIToolStripMenuItem.Checked = this.autoHaste_IIEnabled[16]; + this.autoFlurryToolStripMenuItem.Checked = this.autoFlurryEnabled[16]; + this.autoFlurryIIToolStripMenuItem.Checked = this.autoFlurry_IIEnabled[16]; + this.autoProtectIVToolStripMenuItem1.Checked = this.autoProtect_IVEnabled[16]; + this.autoProtectVToolStripMenuItem1.Checked = this.autoProtect_VEnabled[16]; + this.autoShellIVToolStripMenuItem.Checked = this.autoShell_IVEnabled[16]; + this.autoShellVToolStripMenuItem.Checked = this.autoShell_VEnabled[16]; + this.playerOptions.Show(this.party2, new Point(0, 0)); } private void player17optionsButton_Click(object sender, EventArgs e) { - playerOptionsSelected = 17; - autoHasteToolStripMenuItem.Checked = autoHasteEnabled[17]; - autoHasteIIToolStripMenuItem.Checked = autoHaste_IIEnabled[17]; - autoFlurryToolStripMenuItem.Checked = autoFlurryEnabled[17]; - autoFlurryIIToolStripMenuItem.Checked = autoFlurry_IIEnabled[17]; - autoProtectIVToolStripMenuItem1.Checked = autoProtect_IVEnabled[17]; - autoProtectVToolStripMenuItem1.Checked = autoProtect_VEnabled[17]; - autoShellIVToolStripMenuItem.Checked = autoShell_IVEnabled[17]; - autoShellVToolStripMenuItem.Checked = autoShell_VEnabled[17]; - playerOptions.Show(party2, new Point(0, 0)); + this.playerOptionsSelected = 17; + this.autoHasteToolStripMenuItem.Checked = this.autoHasteEnabled[17]; + this.autoHasteIIToolStripMenuItem.Checked = this.autoHaste_IIEnabled[17]; + this.autoFlurryToolStripMenuItem.Checked = this.autoFlurryEnabled[17]; + this.autoFlurryIIToolStripMenuItem.Checked = this.autoFlurry_IIEnabled[17]; + this.autoProtectIVToolStripMenuItem1.Checked = this.autoProtect_IVEnabled[17]; + this.autoProtectVToolStripMenuItem1.Checked = this.autoProtect_VEnabled[17]; + this.autoShellIVToolStripMenuItem.Checked = this.autoShell_IVEnabled[17]; + this.autoShellVToolStripMenuItem.Checked = this.autoShell_VEnabled[17]; + this.playerOptions.Show(this.party2, new Point(0, 0)); } #endregion #region "== autoOptions (Auto Button)" private void player0buffsButton_Click(object sender, EventArgs e) { - autoOptionsSelected = 0; - autoPhalanxIIToolStripMenuItem1.Checked = autoPhalanx_IIEnabled[0]; - autoRegenIVToolStripMenuItem1.Checked = autoRegen_IVEnabled[0]; - autoRefreshToolStripMenuItem1.Checked = autoRefreshEnabled[0]; - autoRegenVToolStripMenuItem.Checked = autoRegen_VEnabled[0]; - autoRefreshIIToolStripMenuItem.Checked = autoRefresh_IIEnabled[0]; - autoOptions.Show(party0, new Point(0, 0)); + this.autoOptionsSelected = 0; + this.autoPhalanxIIToolStripMenuItem1.Checked = this.autoPhalanx_IIEnabled[0]; + this.autoRegenIVToolStripMenuItem1.Checked = this.autoRegen_IVEnabled[0]; + this.autoRefreshToolStripMenuItem1.Checked = this.autoRefreshEnabled[0]; + this.autoRegenVToolStripMenuItem.Checked = this.autoRegen_VEnabled[0]; + this.autoRefreshIIToolStripMenuItem.Checked = this.autoRefresh_IIEnabled[0]; + this.autoOptions.Show(this.party0, new Point(0, 0)); } private void player1buffsButton_Click(object sender, EventArgs e) { - autoOptionsSelected = 1; - autoPhalanxIIToolStripMenuItem1.Checked = autoPhalanx_IIEnabled[1]; - autoRegenIVToolStripMenuItem1.Checked = autoRegen_IVEnabled[1]; - autoRefreshToolStripMenuItem1.Checked = autoRefreshEnabled[1]; - autoRegenVToolStripMenuItem.Checked = autoRegen_VEnabled[1]; - autoRefreshIIToolStripMenuItem.Checked = autoRefresh_IIEnabled[1]; - autoOptions.Show(party0, new Point(0, 0)); + this.autoOptionsSelected = 1; + this.autoPhalanxIIToolStripMenuItem1.Checked = this.autoPhalanx_IIEnabled[1]; + this.autoRegenIVToolStripMenuItem1.Checked = this.autoRegen_IVEnabled[1]; + this.autoRefreshToolStripMenuItem1.Checked = this.autoRefreshEnabled[1]; + this.autoRegenVToolStripMenuItem.Checked = this.autoRegen_VEnabled[1]; + this.autoRefreshIIToolStripMenuItem.Checked = this.autoRefresh_IIEnabled[1]; + this.autoOptions.Show(this.party0, new Point(0, 0)); } private void player2buffsButton_Click(object sender, EventArgs e) { - autoOptionsSelected = 2; - autoPhalanxIIToolStripMenuItem1.Checked = autoPhalanx_IIEnabled[2]; - autoRegenIVToolStripMenuItem1.Checked = autoRegen_IVEnabled[2]; - autoRefreshToolStripMenuItem1.Checked = autoRefreshEnabled[2]; - autoRegenVToolStripMenuItem.Checked = autoRegen_VEnabled[2]; - autoRefreshIIToolStripMenuItem.Checked = autoRefresh_IIEnabled[2]; - autoOptions.Show(party0, new Point(0, 0)); + this.autoOptionsSelected = 2; + this.autoPhalanxIIToolStripMenuItem1.Checked = this.autoPhalanx_IIEnabled[2]; + this.autoRegenIVToolStripMenuItem1.Checked = this.autoRegen_IVEnabled[2]; + this.autoRefreshToolStripMenuItem1.Checked = this.autoRefreshEnabled[2]; + this.autoRegenVToolStripMenuItem.Checked = this.autoRegen_VEnabled[2]; + this.autoRefreshIIToolStripMenuItem.Checked = this.autoRefresh_IIEnabled[2]; + this.autoOptions.Show(this.party0, new Point(0, 0)); } private void player3buffsButton_Click(object sender, EventArgs e) { - autoOptionsSelected = 3; - autoPhalanxIIToolStripMenuItem1.Checked = autoPhalanx_IIEnabled[3]; - autoRegenIVToolStripMenuItem1.Checked = autoRegen_IVEnabled[3]; - autoRefreshToolStripMenuItem1.Checked = autoRefreshEnabled[3]; - autoRegenVToolStripMenuItem.Checked = autoRegen_VEnabled[3]; - autoRefreshIIToolStripMenuItem.Checked = autoRefresh_IIEnabled[3]; - autoOptions.Show(party0, new Point(0, 0)); + this.autoOptionsSelected = 3; + this.autoPhalanxIIToolStripMenuItem1.Checked = this.autoPhalanx_IIEnabled[3]; + this.autoRegenIVToolStripMenuItem1.Checked = this.autoRegen_IVEnabled[3]; + this.autoRefreshToolStripMenuItem1.Checked = this.autoRefreshEnabled[3]; + this.autoRegenVToolStripMenuItem.Checked = this.autoRegen_VEnabled[3]; + this.autoRefreshIIToolStripMenuItem.Checked = this.autoRefresh_IIEnabled[3]; + this.autoOptions.Show(this.party0, new Point(0, 0)); } private void player4buffsButton_Click(object sender, EventArgs e) { - autoOptionsSelected = 4; - autoPhalanxIIToolStripMenuItem1.Checked = autoPhalanx_IIEnabled[4]; - autoRegenIVToolStripMenuItem1.Checked = autoRegen_IVEnabled[4]; - autoRefreshToolStripMenuItem1.Checked = autoRefreshEnabled[4]; - autoRegenVToolStripMenuItem.Checked = autoRegen_VEnabled[4]; - autoRefreshIIToolStripMenuItem.Checked = autoRefresh_IIEnabled[4]; - autoOptions.Show(party0, new Point(0, 0)); + this.autoOptionsSelected = 4; + this.autoPhalanxIIToolStripMenuItem1.Checked = this.autoPhalanx_IIEnabled[4]; + this.autoRegenIVToolStripMenuItem1.Checked = this.autoRegen_IVEnabled[4]; + this.autoRefreshToolStripMenuItem1.Checked = this.autoRefreshEnabled[4]; + this.autoRegenVToolStripMenuItem.Checked = this.autoRegen_VEnabled[4]; + this.autoRefreshIIToolStripMenuItem.Checked = this.autoRefresh_IIEnabled[4]; + this.autoOptions.Show(this.party0, new Point(0, 0)); } private void player5buffsButton_Click(object sender, EventArgs e) { - autoOptionsSelected = 5; - autoPhalanxIIToolStripMenuItem1.Checked = autoPhalanx_IIEnabled[5]; - autoRegenIVToolStripMenuItem1.Checked = autoRegen_IVEnabled[5]; - autoRefreshToolStripMenuItem1.Checked = autoRefreshEnabled[5]; - autoRegenVToolStripMenuItem.Checked = autoRegen_VEnabled[5]; - autoRefreshIIToolStripMenuItem.Checked = autoRefresh_IIEnabled[5]; - autoOptions.Show(party0, new Point(0, 0)); + this.autoOptionsSelected = 5; + this.autoPhalanxIIToolStripMenuItem1.Checked = this.autoPhalanx_IIEnabled[5]; + this.autoRegenIVToolStripMenuItem1.Checked = this.autoRegen_IVEnabled[5]; + this.autoRefreshToolStripMenuItem1.Checked = this.autoRefreshEnabled[5]; + this.autoRegenVToolStripMenuItem.Checked = this.autoRegen_VEnabled[5]; + this.autoRefreshIIToolStripMenuItem.Checked = this.autoRefresh_IIEnabled[5]; + this.autoOptions.Show(this.party0, new Point(0, 0)); } private void player6buffsButton_Click(object sender, EventArgs e) { - autoOptionsSelected = 6; - autoOptions.Show(party1, new Point(0, 0)); + this.autoOptionsSelected = 6; + this.autoOptions.Show(this.party1, new Point(0, 0)); } private void player7buffsButton_Click(object sender, EventArgs e) { - autoOptionsSelected = 7; - autoOptions.Show(party1, new Point(0, 0)); + this.autoOptionsSelected = 7; + this.autoOptions.Show(this.party1, new Point(0, 0)); } private void player8buffsButton_Click(object sender, EventArgs e) { - autoOptionsSelected = 8; - autoOptions.Show(party1, new Point(0, 0)); + this.autoOptionsSelected = 8; + this.autoOptions.Show(this.party1, new Point(0, 0)); } private void player9buffsButton_Click(object sender, EventArgs e) { - autoOptionsSelected = 9; - autoOptions.Show(party1, new Point(0, 0)); + this.autoOptionsSelected = 9; + this.autoOptions.Show(this.party1, new Point(0, 0)); } private void player10buffsButton_Click(object sender, EventArgs e) { - autoOptionsSelected = 10; - autoOptions.Show(party1, new Point(0, 0)); + this.autoOptionsSelected = 10; + this.autoOptions.Show(this.party1, new Point(0, 0)); } private void player11buffsButton_Click(object sender, EventArgs e) { - autoOptionsSelected = 11; - autoOptions.Show(party1, new Point(0, 0)); + this.autoOptionsSelected = 11; + this.autoOptions.Show(this.party1, new Point(0, 0)); } private void player12buffsButton_Click(object sender, EventArgs e) { - autoOptionsSelected = 12; - autoOptions.Show(party2, new Point(0, 0)); + this.autoOptionsSelected = 12; + this.autoOptions.Show(this.party2, new Point(0, 0)); } private void player13buffsButton_Click(object sender, EventArgs e) { - autoOptionsSelected = 13; - autoOptions.Show(party2, new Point(0, 0)); + this.autoOptionsSelected = 13; + this.autoOptions.Show(this.party2, new Point(0, 0)); } private void player14buffsButton_Click(object sender, EventArgs e) { - autoOptionsSelected = 14; - autoOptions.Show(party2, new Point(0, 0)); + this.autoOptionsSelected = 14; + this.autoOptions.Show(this.party2, new Point(0, 0)); } private void player15buffsButton_Click(object sender, EventArgs e) { - autoOptionsSelected = 15; - autoOptions.Show(party2, new Point(0, 0)); + this.autoOptionsSelected = 15; + this.autoOptions.Show(this.party2, new Point(0, 0)); } private void player16buffsButton_Click(object sender, EventArgs e) { - autoOptionsSelected = 16; - autoOptions.Show(party2, new Point(0, 0)); + this.autoOptionsSelected = 16; + this.autoOptions.Show(this.party2, new Point(0, 0)); } private void player17buffsButton_Click(object sender, EventArgs e) { - autoOptionsSelected = 17; - autoOptions.Show(party2, new Point(0, 0)); + this.autoOptionsSelected = 17; + this.autoOptions.Show(this.party2, new Point(0, 0)); } #endregion #region "== castingLockTimer" private void castingLockTimer_Tick(object sender, EventArgs e) { - if (_FFACEPL == null || _FFACEMonitored == null) + if (_ELITEAPIPL == null || this._ELITEAPIMonitored == null) { return; } - if (_FFACEPL.Player.GetLoginStatus != LoginStatus.LoggedIn || _FFACEMonitored.Player.GetLoginStatus != LoginStatus.LoggedIn) + if (_ELITEAPIPL.Player.LoginStatus != (int)LoginStatus.LoggedIn || this._ELITEAPIMonitored.Player.LoginStatus != (int)LoginStatus.LoggedIn) { return; } - castingLockTimer.Enabled = false; - castingStatusCheck.Enabled = true; + this.castingLockTimer.Enabled = false; + this.castingStatusCheck.Enabled = true; } private void castingStatusCheck_Tick(object sender, EventArgs e) { - if (_FFACEPL == null || _FFACEMonitored == null) + if (_ELITEAPIPL == null || this._ELITEAPIMonitored == null) { return; } - if (_FFACEPL.Player.GetLoginStatus != LoginStatus.LoggedIn || _FFACEMonitored.Player.GetLoginStatus != LoginStatus.LoggedIn) + if (_ELITEAPIPL.Player.LoginStatus != (int)LoginStatus.LoggedIn || this._ELITEAPIMonitored.Player.LoginStatus != (int)LoginStatus.LoggedIn) { return; } - if (_FFACEPL.Player.CastPercentEx >= 75) + if (_ELITEAPIPL.CastBar.Percent * 100.0f >= 75) { - castingLockLabel.Text = "Casting is soon to be UNLOCKED!"; - castingStatusCheck.Enabled = false; - castingUnlockTimer.Enabled = true; + this.castingLockLabel.Text = "Casting is soon to be UNLOCKED!"; + this.castingStatusCheck.Enabled = false; + this.castingUnlockTimer.Enabled = true; } - else if (castingSafetyPercentage == _FFACEPL.Player.CastPercentEx) + else if (this.castingSafetyPercentage == _ELITEAPIPL.CastBar.Percent * 100.0f) { - castingLockLabel.Text = "Casting is INTERRUPTED!"; - castingStatusCheck.Enabled = false; - castingUnlockTimer.Enabled = true; + this.castingLockLabel.Text = "Casting is INTERRUPTED!"; + this.castingStatusCheck.Enabled = false; + this.castingUnlockTimer.Enabled = true; } - castingSafetyPercentage = _FFACEPL.Player.CastPercentEx; + this.castingSafetyPercentage = (int)(_ELITEAPIPL.CastBar.Percent * 100.0f); } private void castingUnlockTimer_Tick(object sender, EventArgs e) { - if (_FFACEPL == null || _FFACEMonitored == null) + if (_ELITEAPIPL == null || this._ELITEAPIMonitored == null) { return; } - if (_FFACEPL.Player.GetLoginStatus != LoginStatus.LoggedIn || _FFACEMonitored.Player.GetLoginStatus != LoginStatus.LoggedIn) + if (_ELITEAPIPL.Player.LoginStatus != (int)LoginStatus.LoggedIn || this._ELITEAPIMonitored.Player.LoginStatus != (int)LoginStatus.LoggedIn) { return; } - - castingLockLabel.Text = "Casting is UNLOCKED!"; - castingLock = false; - actionTimer.Enabled = true; - castingUnlockTimer.Enabled = false; + + this.castingLockLabel.Text = "Casting is UNLOCKED!"; + this.castingLock = false; + this.actionTimer.Enabled = true; + this.castingUnlockTimer.Enabled = false; } private void actionUnlockTimer_Tick(object sender, EventArgs e) { - if (_FFACEPL == null || _FFACEMonitored == null) + if (_ELITEAPIPL == null || this._ELITEAPIMonitored == null) { return; } - if (_FFACEPL.Player.GetLoginStatus != LoginStatus.LoggedIn || _FFACEMonitored.Player.GetLoginStatus != LoginStatus.LoggedIn) + if (_ELITEAPIPL.Player.LoginStatus != (int)LoginStatus.LoggedIn || this._ELITEAPIMonitored.Player.LoginStatus != (int)LoginStatus.LoggedIn) { return; } - castingLockLabel.Text = "Casting is UNLOCKED!"; - castingLock = false; - actionUnlockTimer.Enabled = false; - actionTimer.Enabled = true; + this.castingLockLabel.Text = "Casting is UNLOCKED!"; + this.castingLock = false; + this.actionUnlockTimer.Enabled = false; + this.actionTimer.Enabled = true; } #endregion #region "== auto spells ToolStripItem_Click" private void autoHasteToolStripMenuItem_Click(object sender, EventArgs e) { - autoHasteEnabled[playerOptionsSelected] = !autoHasteEnabled[playerOptionsSelected]; + this.autoHasteEnabled[this.playerOptionsSelected] = !this.autoHasteEnabled[this.playerOptionsSelected]; } private void autoHasteIIToolStripMenuItem_Click(object sender, EventArgs e) { - autoHaste_IIEnabled[playerOptionsSelected] = !autoHaste_IIEnabled[playerOptionsSelected]; + this.autoHaste_IIEnabled[this.playerOptionsSelected] = !this.autoHaste_IIEnabled[this.playerOptionsSelected]; } private void autoFlurryToolStripMenuItem_Click(object sender, EventArgs e) { - autoFlurryEnabled[playerOptionsSelected] = !autoFlurryEnabled[playerOptionsSelected]; + this.autoFlurryEnabled[this.playerOptionsSelected] = !this.autoFlurryEnabled[this.playerOptionsSelected]; } private void autoFlurryIIToolStripMenuItem_Click(object sender, EventArgs e) { - autoFlurry_IIEnabled[playerOptionsSelected] = !autoFlurry_IIEnabled[playerOptionsSelected]; + this.autoFlurry_IIEnabled[this.playerOptionsSelected] = !this.autoFlurry_IIEnabled[this.playerOptionsSelected]; } private void autoProtectIVToolStripMenuItem1_Click(object sender, EventArgs e) { - autoProtect_IVEnabled[playerOptionsSelected] = !autoProtect_IVEnabled[playerOptionsSelected]; + this.autoProtect_IVEnabled[this.playerOptionsSelected] = !this.autoProtect_IVEnabled[this.playerOptionsSelected]; } private void autoProtectVToolStripMenuItem1_Click(object sender, EventArgs e) { - autoProtect_VEnabled[playerOptionsSelected] = !autoProtect_VEnabled[playerOptionsSelected]; + this.autoProtect_VEnabled[this.playerOptionsSelected] = !this.autoProtect_VEnabled[this.playerOptionsSelected]; } private void autoShellIVToolStripMenuItem_Click(object sender, EventArgs e) { - autoShell_IVEnabled[playerOptionsSelected] = !autoShell_IVEnabled[playerOptionsSelected]; + this.autoShell_IVEnabled[this.playerOptionsSelected] = !this.autoShell_IVEnabled[this.playerOptionsSelected]; } private void autoShellVToolStripMenuItem_Click(object sender, EventArgs e) { - autoShell_VEnabled[playerOptionsSelected] = !autoShell_VEnabled[playerOptionsSelected]; + this.autoShell_VEnabled[this.playerOptionsSelected] = !this.autoShell_VEnabled[this.playerOptionsSelected]; } private void autoHasteToolStripMenuItem1_Click(object sender, EventArgs e) { - autoHasteEnabled[autoOptionsSelected] = !autoHasteEnabled[autoOptionsSelected]; + this.autoHasteEnabled[this.autoOptionsSelected] = !this.autoHasteEnabled[this.autoOptionsSelected]; } - + private void autoPhalanxIIToolStripMenuItem1_Click(object sender, EventArgs e) { - autoPhalanx_IIEnabled[autoOptionsSelected] = !autoPhalanx_IIEnabled[autoOptionsSelected]; + this.autoPhalanx_IIEnabled[this.autoOptionsSelected] = !this.autoPhalanx_IIEnabled[this.autoOptionsSelected]; } - + private void autoRegenIVToolStripMenuItem1_Click(object sender, EventArgs e) { - autoRegen_IVEnabled[autoOptionsSelected] = !autoRegen_IVEnabled[autoOptionsSelected]; + this.autoRegen_IVEnabled[this.autoOptionsSelected] = !this.autoRegen_IVEnabled[this.autoOptionsSelected]; } private void autoRegenVToolStripMenuItem_Click(object sender, EventArgs e) { - autoRegen_VEnabled[autoOptionsSelected] = !autoRegen_VEnabled[autoOptionsSelected]; + this.autoRegen_VEnabled[this.autoOptionsSelected] = !this.autoRegen_VEnabled[this.autoOptionsSelected]; } private void autoRefreshToolStripMenuItem1_Click(object sender, EventArgs e) { - autoRefreshEnabled[autoOptionsSelected] = !autoRefreshEnabled[autoOptionsSelected]; + this.autoRefreshEnabled[this.autoOptionsSelected] = !this.autoRefreshEnabled[this.autoOptionsSelected]; } private void autoRefreshIIToolStripMenuItem_Click(object sender, EventArgs e) { - autoRefresh_IIEnabled[autoOptionsSelected] = !autoRefresh_IIEnabled[autoOptionsSelected]; + this.autoRefresh_IIEnabled[this.autoOptionsSelected] = !this.autoRefresh_IIEnabled[this.autoOptionsSelected]; } #endregion #region "== spells ToolStripMenuItem_Click" private void hasteToolStripMenuItem_Click(object sender, EventArgs e) { - hastePlayer(playerOptionsSelected); + this.hastePlayer(this.playerOptionsSelected); } private void followToolStripMenuItem_Click(object sender, EventArgs e) { - _FFACEPL.Windower.SendString("/follow " + _FFACEMonitored.PartyMember[playerOptionsSelected].Name); - CastLockMethod(); + _ELITEAPIPL.ThirdParty.SendString("/follow " + this._ELITEAPIMonitored.Party.GetPartyMembers()[this.playerOptionsSelected].Name); + this.CastLockMethod(); } private void phalanxIIToolStripMenuItem_Click(object sender, EventArgs e) { - _FFACEPL.Windower.SendString("/ma \"Phalanx II\" " + _FFACEMonitored.PartyMember[playerOptionsSelected].Name); - CastLockMethod(); + _ELITEAPIPL.ThirdParty.SendString("/ma \"Phalanx II\" " + this._ELITEAPIMonitored.Party.GetPartyMembers()[this.playerOptionsSelected].Name); + this.CastLockMethod(); } private void invisibleToolStripMenuItem_Click(object sender, EventArgs e) { - _FFACEPL.Windower.SendString("/ma \"Invisible\" " + _FFACEMonitored.PartyMember[playerOptionsSelected].Name); - CastLockMethod(); + _ELITEAPIPL.ThirdParty.SendString("/ma \"Invisible\" " + this._ELITEAPIMonitored.Party.GetPartyMembers()[this.playerOptionsSelected].Name); + this.CastLockMethod(); } private void refreshToolStripMenuItem_Click(object sender, EventArgs e) { - _FFACEPL.Windower.SendString("/ma \"Refresh\" " + _FFACEMonitored.PartyMember[playerOptionsSelected].Name); - CastLockMethod(); + _ELITEAPIPL.ThirdParty.SendString("/ma \"Refresh\" " + this._ELITEAPIMonitored.Party.GetPartyMembers()[this.playerOptionsSelected].Name); + this.CastLockMethod(); } private void refreshIIToolStripMenuItem_Click(object sender, EventArgs e) { - _FFACEPL.Windower.SendString("/ma \"Refresh II\" " + _FFACEMonitored.PartyMember[playerOptionsSelected].Name); - CastLockMethod(); + _ELITEAPIPL.ThirdParty.SendString("/ma \"Refresh II\" " + this._ELITEAPIMonitored.Party.GetPartyMembers()[this.playerOptionsSelected].Name); + this.CastLockMethod(); } private void sneakToolStripMenuItem_Click(object sender, EventArgs e) { - _FFACEPL.Windower.SendString("/ma \"Sneak\" " + _FFACEMonitored.PartyMember[playerOptionsSelected].Name); - CastLockMethod(); + _ELITEAPIPL.ThirdParty.SendString("/ma \"Sneak\" " + this._ELITEAPIMonitored.Party.GetPartyMembers()[this.playerOptionsSelected].Name); + this.CastLockMethod(); } private void regenIIToolStripMenuItem_Click(object sender, EventArgs e) { - _FFACEPL.Windower.SendString("/ma \"Regen II\" " + _FFACEMonitored.PartyMember[playerOptionsSelected].Name); - CastLockMethod(); + _ELITEAPIPL.ThirdParty.SendString("/ma \"Regen II\" " + this._ELITEAPIMonitored.Party.GetPartyMembers()[this.playerOptionsSelected].Name); + this.CastLockMethod(); } - - private void regenIIIToolStripMenuItem_Click (object sender, EventArgs e) + + private void regenIIIToolStripMenuItem_Click(object sender, EventArgs e) { - _FFACEPL.Windower.SendString("/ma \"Regen III\" " + _FFACEMonitored.PartyMember[playerOptionsSelected].Name); - CastLockMethod(); + _ELITEAPIPL.ThirdParty.SendString("/ma \"Regen III\" " + this._ELITEAPIMonitored.Party.GetPartyMembers()[this.playerOptionsSelected].Name); + this.CastLockMethod(); } - private void regenIVToolStripMenuItem_Click (object sender, EventArgs e) + private void regenIVToolStripMenuItem_Click(object sender, EventArgs e) { - _FFACEPL.Windower.SendString("/ma \"Regen IV\" " + _FFACEMonitored.PartyMember[playerOptionsSelected].Name); - CastLockMethod(); + _ELITEAPIPL.ThirdParty.SendString("/ma \"Regen IV\" " + this._ELITEAPIMonitored.Party.GetPartyMembers()[this.playerOptionsSelected].Name); + this.CastLockMethod(); } private void eraseToolStripMenuItem_Click(object sender, EventArgs e) { - _FFACEPL.Windower.SendString("/ma \"Erase\" " + _FFACEMonitored.PartyMember[playerOptionsSelected].Name); - CastLockMethod(); + _ELITEAPIPL.ThirdParty.SendString("/ma \"Erase\" " + this._ELITEAPIMonitored.Party.GetPartyMembers()[this.playerOptionsSelected].Name); + this.CastLockMethod(); } private void sacrificeToolStripMenuItem_Click(object sender, EventArgs e) { - _FFACEPL.Windower.SendString("/ma \"Sacrifice\" " + _FFACEMonitored.PartyMember[playerOptionsSelected].Name); - CastLockMethod(); + _ELITEAPIPL.ThirdParty.SendString("/ma \"Sacrifice\" " + this._ELITEAPIMonitored.Party.GetPartyMembers()[this.playerOptionsSelected].Name); + this.CastLockMethod(); } private void blindnaToolStripMenuItem_Click(object sender, EventArgs e) { - _FFACEPL.Windower.SendString("/ma \"Blindna\" " + _FFACEMonitored.PartyMember[playerOptionsSelected].Name); - CastLockMethod(); + _ELITEAPIPL.ThirdParty.SendString("/ma \"Blindna\" " + this._ELITEAPIMonitored.Party.GetPartyMembers()[this.playerOptionsSelected].Name); + this.CastLockMethod(); } private void cursnaToolStripMenuItem_Click(object sender, EventArgs e) { - _FFACEPL.Windower.SendString("/ma \"Cursna\" " + _FFACEMonitored.PartyMember[playerOptionsSelected].Name); - CastLockMethod(); + _ELITEAPIPL.ThirdParty.SendString("/ma \"Cursna\" " + this._ELITEAPIMonitored.Party.GetPartyMembers()[this.playerOptionsSelected].Name); + this.CastLockMethod(); } private void paralynaToolStripMenuItem_Click(object sender, EventArgs e) { - _FFACEPL.Windower.SendString("/ma \"Paralyna\" " + _FFACEMonitored.PartyMember[playerOptionsSelected].Name); - CastLockMethod(); + _ELITEAPIPL.ThirdParty.SendString("/ma \"Paralyna\" " + this._ELITEAPIMonitored.Party.GetPartyMembers()[this.playerOptionsSelected].Name); + this.CastLockMethod(); } private void poisonaToolStripMenuItem_Click(object sender, EventArgs e) { - _FFACEPL.Windower.SendString("/ma \"Poisona\" " + _FFACEMonitored.PartyMember[playerOptionsSelected].Name); - CastLockMethod(); + _ELITEAPIPL.ThirdParty.SendString("/ma \"Poisona\" " + this._ELITEAPIMonitored.Party.GetPartyMembers()[this.playerOptionsSelected].Name); + this.CastLockMethod(); } private void stonaToolStripMenuItem_Click(object sender, EventArgs e) { - _FFACEPL.Windower.SendString("/ma \"Stona\" " + _FFACEMonitored.PartyMember[playerOptionsSelected].Name); - CastLockMethod(); + _ELITEAPIPL.ThirdParty.SendString("/ma \"Stona\" " + this._ELITEAPIMonitored.Party.GetPartyMembers()[this.playerOptionsSelected].Name); + this.CastLockMethod(); } private void silenaToolStripMenuItem_Click(object sender, EventArgs e) { - _FFACEPL.Windower.SendString("/ma \"Silena\" " + _FFACEMonitored.PartyMember[playerOptionsSelected].Name); - CastLockMethod(); + _ELITEAPIPL.ThirdParty.SendString("/ma \"Silena\" " + this._ELITEAPIMonitored.Party.GetPartyMembers()[this.playerOptionsSelected].Name); + this.CastLockMethod(); } private void virunaToolStripMenuItem_Click(object sender, EventArgs e) { - _FFACEPL.Windower.SendString("/ma \"Viruna\" " + _FFACEMonitored.PartyMember[playerOptionsSelected].Name); - CastLockMethod(); + _ELITEAPIPL.ThirdParty.SendString("/ma \"Viruna\" " + this._ELITEAPIMonitored.Party.GetPartyMembers()[this.playerOptionsSelected].Name); + this.CastLockMethod(); } private void protectIVToolStripMenuItem_Click(object sender, EventArgs e) { - _FFACEPL.Windower.SendString("/ma \"Protect IV\" " + _FFACEMonitored.PartyMember[playerOptionsSelected].Name); - CastLockMethod(); + _ELITEAPIPL.ThirdParty.SendString("/ma \"Protect IV\" " + this._ELITEAPIMonitored.Party.GetPartyMembers()[this.playerOptionsSelected].Name); + this.CastLockMethod(); } private void protectVToolStripMenuItem_Click(object sender, EventArgs e) { - _FFACEPL.Windower.SendString("/ma \"Protect V\" " + _FFACEMonitored.PartyMember[playerOptionsSelected].Name); - CastLockMethod(); + _ELITEAPIPL.ThirdParty.SendString("/ma \"Protect V\" " + this._ELITEAPIMonitored.Party.GetPartyMembers()[this.playerOptionsSelected].Name); + this.CastLockMethod(); } private void shellIVToolStripMenuItem_Click(object sender, EventArgs e) { - _FFACEPL.Windower.SendString("/ma \"Shell IV\" " + _FFACEMonitored.PartyMember[playerOptionsSelected].Name); - CastLockMethod(); + _ELITEAPIPL.ThirdParty.SendString("/ma \"Shell IV\" " + this._ELITEAPIMonitored.Party.GetPartyMembers()[this.playerOptionsSelected].Name); + this.CastLockMethod(); } private void shellVToolStripMenuItem_Click(object sender, EventArgs e) { - _FFACEPL.Windower.SendString("/ma \"Shell V\" " + _FFACEMonitored.PartyMember[playerOptionsSelected].Name); - CastLockMethod(); - } + _ELITEAPIPL.ThirdParty.SendString("/ma \"Shell V\" " + this._ELITEAPIMonitored.Party.GetPartyMembers()[this.playerOptionsSelected].Name); + this.CastLockMethod(); + } #endregion #region "== Pause Button" private void button3_Click(object sender, EventArgs e) { - pauseActions = !pauseActions; + this.pauseActions = !this.pauseActions; - if (!pauseActions) + if (!this.pauseActions) { - pauseButton.Text = "Pause"; - pauseButton.ForeColor = Color.Black; + this.pauseButton.Text = "Pause"; + this.pauseButton.ForeColor = Color.Black; } - else if (pauseActions) - { - pauseButton.Text = "Paused!"; - pauseButton.ForeColor = Color.Red; + else if (this.pauseActions) + { + this.pauseButton.Text = "Paused!"; + this.pauseButton.ForeColor = Color.Red; } } #endregion @@ -3172,22 +4539,23 @@ private void button3_Click(object sender, EventArgs e) #region "== Player (debug) Button" private void button1_Click(object sender, EventArgs e) { - if (_FFACEMonitored == null) + if (this._ELITEAPIMonitored == null) { - MessageBox.Show("Attach to process before pressing this button","Error"); + MessageBox.Show("Attach to process before pressing this button", "Error"); return; } - var items = _FFACEMonitored.PartyMember.Keys.OrderBy(k => _FFACEMonitored.PartyMember[k].HPPCurrent); + var items = this._ELITEAPIMonitored.Party.GetPartyMembers().Where(p => p.Active >= 1).OrderBy(p => p.CurrentHPP).Select(p => p.Index); + /* - * var items = from k in _FFACEMonitored.PartyMember.Keys - orderby _FFACEMonitored.PartyMember[k].HPPCurrent ascending + * var items = from k in _ELITEAPIMonitored.PartyMember.Keys + orderby _ELITEAPIMonitored.Party.GetPartyMembers()[k].CurrentHPP ascending select k; */ foreach (byte id in items) { - MessageBox.Show(id.ToString() + ": " + _FFACEMonitored.PartyMember[id].Name + ": " + _FFACEMonitored.PartyMember[id].HPPCurrent.ToString() + ": " + _FFACEMonitored.PartyMember[id].Active.ToString()); + MessageBox.Show(id.ToString() + ": " + this._ELITEAPIMonitored.Party.GetPartyMembers()[id].Name + ": " + this._ELITEAPIMonitored.Party.GetPartyMembers()[id].CurrentHPP.ToString() + ": " + this._ELITEAPIMonitored.Party.GetPartyMembers()[id].Active.ToString()); } } #endregion @@ -3196,13 +4564,13 @@ orderby _FFACEMonitored.PartyMember[k].HPPCurrent ascending private void checkBox1_CheckedChanged(object sender, EventArgs e) { { - if (TopMost) + if (this.TopMost) { - TopMost = false; + this.TopMost = false; } else { - TopMost = true; + this.TopMost = true; } } } @@ -3227,51 +4595,51 @@ private void MouseClickTray(object sender, MouseEventArgs e) #region "== About Tab ToolStripMenu Item" private void aboutToolStripMenuItem_Click(object sender, EventArgs e) { - new Form3().Show(); + new Form3().Show(); } #endregion #region "== Transparency (Opacity Value)" private void trackBar1_Scroll(object sender, EventArgs e) { - Opacity = trackBar1.Value * 0.01; + this.Opacity = this.trackBar1.Value * 0.01; } #endregion #region "== Shellra & Protectra Recast Level" - private bool CheckShellraLevelRecast () + private bool CheckShellraLevelRecast() { switch ((int)Settings.Default.plShellralevel) { case 1: - return _FFACEPL.Timer.GetSpellRecast(SpellList.Shellra) == 0; + return _ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Shellra) == 0; case 2: - return _FFACEPL.Timer.GetSpellRecast(SpellList.Shellra_II) == 0; + return _ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Shellra_II) == 0; case 3: - return _FFACEPL.Timer.GetSpellRecast(SpellList.Shellra_III) == 0; + return _ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Shellra_III) == 0; case 4: - return _FFACEPL.Timer.GetSpellRecast(SpellList.Shellra_IV) == 0; + return _ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Shellra_IV) == 0; case 5: - return _FFACEPL.Timer.GetSpellRecast(SpellList.Shellra_V) == 0; + return _ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Shellra_V) == 0; default: return false; } } - private bool CheckProtectraLevelRecast () + private bool CheckProtectraLevelRecast() { switch ((int)Settings.Default.plProtectralevel) { case 1: - return _FFACEPL.Timer.GetSpellRecast(SpellList.Protectra) == 0; + return _ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Protectra) == 0; case 2: - return _FFACEPL.Timer.GetSpellRecast(SpellList.Protectra_II) == 0; + return _ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Protectra_II) == 0; case 3: - return _FFACEPL.Timer.GetSpellRecast(SpellList.Protectra_III) == 0; + return _ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Protectra_III) == 0; case 4: - return _FFACEPL.Timer.GetSpellRecast(SpellList.Protectra_IV) == 0; + return _ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Protectra_IV) == 0; case 5: - return _FFACEPL.Timer.GetSpellRecast(SpellList.Protectra_V) == 0; + return _ELITEAPIPL.Recast.GetSpellRecast((int)SpellList.Protectra_V) == 0; default: return false; } @@ -3281,13 +4649,13 @@ private bool CheckProtectraLevelRecast () #region "== pl Medicine Check" private bool IsMedicated() { - return plStatusCheck(StatusEffect.Medicine); + return this.plStatusCheck(StatusEffect.Medicine); } - #endregion + #endregion + + - - } } \ No newline at end of file diff --git a/Form2.Designer.cs b/Form2.Designer.cs index 02e8267..32b0f1b 100644 --- a/Form2.Designer.cs +++ b/Form2.Designer.cs @@ -31,7 +31,7 @@ protected override void Dispose(bool disposing) private void InitializeComponent() { this.components = new System.ComponentModel.Container(); - System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(Form2)); + var resources = new System.ComponentModel.ComponentResourceManager(typeof(Form2)); this.tabControl1 = new System.Windows.Forms.TabControl(); this.tabPage1 = new System.Windows.Forms.TabPage(); this.groupBox2 = new System.Windows.Forms.GroupBox(); diff --git a/Form2.cs b/Form2.cs index d79c8f4..de63802 100644 --- a/Form2.cs +++ b/Form2.cs @@ -11,379 +11,379 @@ public partial class Form2 : Form public Form2() { - InitializeComponent(); - cure1enabled.Checked = Properties.Settings.Default.cure1enabled; - cure2enabled.Checked = Properties.Settings.Default.cure2enabled; - cure3enabled.Checked = Properties.Settings.Default.cure3enabled; - cure4enabled.Checked = Properties.Settings.Default.cure4enabled; - cure5enabled.Checked = Properties.Settings.Default.cure5enabled; - cure6enabled.Checked = Properties.Settings.Default.cure6enabled; - cure1amount.Value = Properties.Settings.Default.cure1amount; - cure2amount.Value = Properties.Settings.Default.cure2amount; - cure3amount.Value = Properties.Settings.Default.cure3amount; - cure4amount.Value = Properties.Settings.Default.cure4amount; - cure5amount.Value = Properties.Settings.Default.cure5amount; - cure6amount.Value = Properties.Settings.Default.cure6amount; - curePercentage.Value = Properties.Settings.Default.curePercentage; - priorityCurePercentage.Value = Properties.Settings.Default.priorityCurePercentage; - curePercentageValueLabel.Text = Properties.Settings.Default.curePercentage.ToString(CultureInfo.InvariantCulture); - priorityCurePercentageValueLabel.Text = Properties.Settings.Default.priorityCurePercentage.ToString(CultureInfo.InvariantCulture); - afflatusSolace.Checked = Properties.Settings.Default.afflatusSolice; - afflatusMisery.Checked = Properties.Settings.Default.afflatusMisery; - lightArts.Checked = Properties.Settings.Default.lightArts; - composure.Checked = Properties.Settings.Default.Composure; - convert.Checked = Properties.Settings.Default.Convert; - divineSealBox.Checked = Properties.Settings.Default.divineSealBox; - addWhite.Checked = Properties.Settings.Default.addWhite; - sublimation.Checked = Properties.Settings.Default.sublimation; - autoHasteMinutes.Value = Properties.Settings.Default.autoHasteMinutes; - autoProtect_IVMinutes.Value = Properties.Settings.Default.autoProtect_IVMinutes; - autoProtect_VMinutes.Value = Properties.Settings.Default.autoProtect_VMinutes; - autoShell_IVMinutes.Value = Properties.Settings.Default.autoShell_IVMinutes; - autoShell_VMinutes.Value = Properties.Settings.Default.autoShell_VMinutes; - autoPhalanxIIMinutes.Value = Properties.Settings.Default.autoPhalanxIIMinutes; - autoRegenIVMinutes.Value = Properties.Settings.Default.autoRegenIVMinutes; - autoRegenVMinutes.Value = Properties.Settings.Default.autoRegenVMinutes; - autoRefreshMinutes.Value = Properties.Settings.Default.autoRefreshMinutes; - autoRefreshIIMinutes.Value = Properties.Settings.Default.autoRefreshIIMinutes; - plSilenceItemEnabled.Checked = Properties.Settings.Default.plSilenceItemEnabled; - plSilenceItem.SelectedIndex = Properties.Settings.Default.plSilenceItemIndex; - wakeSleepEnabled.Checked = Properties.Settings.Default.wakeSleepEnabled; - wakeSleepSpell.SelectedIndex = Properties.Settings.Default.wakeSleepSpellIndex; - plDebuffEnabled.Checked = Properties.Settings.Default.plDebuffEnabled; - monitoredDebuffEnabled.Checked = Properties.Settings.Default.monitoredDebuffEnabled; - plBlink.Checked = Properties.Settings.Default.plBlink; - plReraise.Checked = Properties.Settings.Default.plReraise; + this.InitializeComponent(); + this.cure1enabled.Checked = Properties.Settings.Default.cure1enabled; + this.cure2enabled.Checked = Properties.Settings.Default.cure2enabled; + this.cure3enabled.Checked = Properties.Settings.Default.cure3enabled; + this.cure4enabled.Checked = Properties.Settings.Default.cure4enabled; + this.cure5enabled.Checked = Properties.Settings.Default.cure5enabled; + this.cure6enabled.Checked = Properties.Settings.Default.cure6enabled; + this.cure1amount.Value = Properties.Settings.Default.cure1amount; + this.cure2amount.Value = Properties.Settings.Default.cure2amount; + this.cure3amount.Value = Properties.Settings.Default.cure3amount; + this.cure4amount.Value = Properties.Settings.Default.cure4amount; + this.cure5amount.Value = Properties.Settings.Default.cure5amount; + this.cure6amount.Value = Properties.Settings.Default.cure6amount; + this.curePercentage.Value = Properties.Settings.Default.curePercentage; + this.priorityCurePercentage.Value = Properties.Settings.Default.priorityCurePercentage; + this.curePercentageValueLabel.Text = Properties.Settings.Default.curePercentage.ToString(CultureInfo.InvariantCulture); + this.priorityCurePercentageValueLabel.Text = Properties.Settings.Default.priorityCurePercentage.ToString(CultureInfo.InvariantCulture); + this.afflatusSolace.Checked = Properties.Settings.Default.afflatusSolice; + this.afflatusMisery.Checked = Properties.Settings.Default.afflatusMisery; + this.lightArts.Checked = Properties.Settings.Default.lightArts; + this.composure.Checked = Properties.Settings.Default.Composure; + this.convert.Checked = Properties.Settings.Default.Convert; + this.divineSealBox.Checked = Properties.Settings.Default.divineSealBox; + this.addWhite.Checked = Properties.Settings.Default.addWhite; + this.sublimation.Checked = Properties.Settings.Default.sublimation; + this.autoHasteMinutes.Value = Properties.Settings.Default.autoHasteMinutes; + this.autoProtect_IVMinutes.Value = Properties.Settings.Default.autoProtect_IVMinutes; + this.autoProtect_VMinutes.Value = Properties.Settings.Default.autoProtect_VMinutes; + this.autoShell_IVMinutes.Value = Properties.Settings.Default.autoShell_IVMinutes; + this.autoShell_VMinutes.Value = Properties.Settings.Default.autoShell_VMinutes; + this.autoPhalanxIIMinutes.Value = Properties.Settings.Default.autoPhalanxIIMinutes; + this.autoRegenIVMinutes.Value = Properties.Settings.Default.autoRegenIVMinutes; + this.autoRegenVMinutes.Value = Properties.Settings.Default.autoRegenVMinutes; + this.autoRefreshMinutes.Value = Properties.Settings.Default.autoRefreshMinutes; + this.autoRefreshIIMinutes.Value = Properties.Settings.Default.autoRefreshIIMinutes; + this.plSilenceItemEnabled.Checked = Properties.Settings.Default.plSilenceItemEnabled; + this.plSilenceItem.SelectedIndex = Properties.Settings.Default.plSilenceItemIndex; + this.wakeSleepEnabled.Checked = Properties.Settings.Default.wakeSleepEnabled; + this.wakeSleepSpell.SelectedIndex = Properties.Settings.Default.wakeSleepSpellIndex; + this.plDebuffEnabled.Checked = Properties.Settings.Default.plDebuffEnabled; + this.monitoredDebuffEnabled.Checked = Properties.Settings.Default.monitoredDebuffEnabled; + this.plBlink.Checked = Properties.Settings.Default.plBlink; + this.plReraise.Checked = Properties.Settings.Default.plReraise; if (Properties.Settings.Default.plReraiseLevel == 1) { - plReraiseLevel1.Checked = true; + this.plReraiseLevel1.Checked = true; } else if (Properties.Settings.Default.plReraiseLevel == 2) { - plReraiseLevel2.Checked = true; + this.plReraiseLevel2.Checked = true; } else if (Properties.Settings.Default.plReraiseLevel == 3) { - plReraiseLevel3.Checked = true; + this.plReraiseLevel3.Checked = true; } - plRefresh.Checked = Properties.Settings.Default.plRefresh; + this.plRefresh.Checked = Properties.Settings.Default.plRefresh; if (Properties.Settings.Default.plRefreshLevel == 1) { - plRefreshLevel1.Checked = true; + this.plRefreshLevel1.Checked = true; } else if (Properties.Settings.Default.plRefreshLevel == 2) { - plRefreshLevel2.Checked = true; + this.plRefreshLevel2.Checked = true; } - plStoneskin.Checked = Properties.Settings.Default.plStoneskin; + this.plStoneskin.Checked = Properties.Settings.Default.plStoneskin; - plAgiDown.Checked = Properties.Settings.Default.plAgiDown; - plAccuracyDown.Checked = Properties.Settings.Default.plAccuracyDown; - plAddle.Checked = Properties.Settings.Default.plAddle; - plAttackDown.Checked = Properties.Settings.Default.plAttackDown; - plBane.Checked = Properties.Settings.Default.plBane; - plBind.Checked = Properties.Settings.Default.plBind; - plBio.Checked = Properties.Settings.Default.plBio; - plBlindness.Checked = Properties.Settings.Default.plBlindness; - plBurn.Checked = Properties.Settings.Default.plBurn; - plChrDown.Checked = Properties.Settings.Default.plChrDown; - plChoke.Checked = Properties.Settings.Default.plChoke; - plCurse.Checked = Properties.Settings.Default.plCurse; - plCurse2.Checked = Properties.Settings.Default.plCurse2; - plDexDown.Checked = Properties.Settings.Default.plDexDown; - plDefenseDown.Checked = Properties.Settings.Default.plDefenseDown; - plDia.Checked = Properties.Settings.Default.plDia; - plDisease.Checked = Properties.Settings.Default.plDisease; - plDoom.Checked = Properties.Settings.Default.plDoom; - plDrown.Checked = Properties.Settings.Default.plDrown; - plElegy.Checked = Properties.Settings.Default.plElegy; - plEvasionDown.Checked = Properties.Settings.Default.plEvasionDown; - plFlash.Checked = Properties.Settings.Default.plFlash; - plFrost.Checked = Properties.Settings.Default.plFrost; - plHelix.Checked = Properties.Settings.Default.plHelix; - plIntDown.Checked = Properties.Settings.Default.plIntDown; - plMndDown.Checked = Properties.Settings.Default.plMndDown; - plMagicAccDown.Checked = Properties.Settings.Default.plMagicAccDown; - plMagicAtkDown.Checked = Properties.Settings.Default.plMagicAtkDown; - plMaxHpDown.Checked = Properties.Settings.Default.plMaxHpDown; - plMaxMpDown.Checked = Properties.Settings.Default.plMaxMpDown; - plMaxTpDown.Checked = Properties.Settings.Default.plMaxTpDown; - plParalysis.Checked = Properties.Settings.Default.plParalysis; - plPlague.Checked = Properties.Settings.Default.plPlague; - plPoison.Checked = Properties.Settings.Default.plPoison; - plRasp.Checked = Properties.Settings.Default.plRasp; - plRequiem.Checked = Properties.Settings.Default.plRequiem; - plStrDown.Checked = Properties.Settings.Default.plStrDown; - plShock.Checked = Properties.Settings.Default.plShock; - plSilence.Checked = Properties.Settings.Default.plSilence; - plSlow.Checked = Properties.Settings.Default.plSlow; - plThrenody.Checked = Properties.Settings.Default.plThrenody; - plVitDown.Checked = Properties.Settings.Default.plVitDown; - plWeight.Checked = Properties.Settings.Default.plWeight; - AutoCastEngageCheckBox.Checked = Properties.Settings.Default.AutoCastEngageCheckBox; + this.plAgiDown.Checked = Properties.Settings.Default.plAgiDown; + this.plAccuracyDown.Checked = Properties.Settings.Default.plAccuracyDown; + this.plAddle.Checked = Properties.Settings.Default.plAddle; + this.plAttackDown.Checked = Properties.Settings.Default.plAttackDown; + this.plBane.Checked = Properties.Settings.Default.plBane; + this.plBind.Checked = Properties.Settings.Default.plBind; + this.plBio.Checked = Properties.Settings.Default.plBio; + this.plBlindness.Checked = Properties.Settings.Default.plBlindness; + this.plBurn.Checked = Properties.Settings.Default.plBurn; + this.plChrDown.Checked = Properties.Settings.Default.plChrDown; + this.plChoke.Checked = Properties.Settings.Default.plChoke; + this.plCurse.Checked = Properties.Settings.Default.plCurse; + this.plCurse2.Checked = Properties.Settings.Default.plCurse2; + this.plDexDown.Checked = Properties.Settings.Default.plDexDown; + this.plDefenseDown.Checked = Properties.Settings.Default.plDefenseDown; + this.plDia.Checked = Properties.Settings.Default.plDia; + this.plDisease.Checked = Properties.Settings.Default.plDisease; + this.plDoom.Checked = Properties.Settings.Default.plDoom; + this.plDrown.Checked = Properties.Settings.Default.plDrown; + this.plElegy.Checked = Properties.Settings.Default.plElegy; + this.plEvasionDown.Checked = Properties.Settings.Default.plEvasionDown; + this.plFlash.Checked = Properties.Settings.Default.plFlash; + this.plFrost.Checked = Properties.Settings.Default.plFrost; + this.plHelix.Checked = Properties.Settings.Default.plHelix; + this.plIntDown.Checked = Properties.Settings.Default.plIntDown; + this.plMndDown.Checked = Properties.Settings.Default.plMndDown; + this.plMagicAccDown.Checked = Properties.Settings.Default.plMagicAccDown; + this.plMagicAtkDown.Checked = Properties.Settings.Default.plMagicAtkDown; + this.plMaxHpDown.Checked = Properties.Settings.Default.plMaxHpDown; + this.plMaxMpDown.Checked = Properties.Settings.Default.plMaxMpDown; + this.plMaxTpDown.Checked = Properties.Settings.Default.plMaxTpDown; + this.plParalysis.Checked = Properties.Settings.Default.plParalysis; + this.plPlague.Checked = Properties.Settings.Default.plPlague; + this.plPoison.Checked = Properties.Settings.Default.plPoison; + this.plRasp.Checked = Properties.Settings.Default.plRasp; + this.plRequiem.Checked = Properties.Settings.Default.plRequiem; + this.plStrDown.Checked = Properties.Settings.Default.plStrDown; + this.plShock.Checked = Properties.Settings.Default.plShock; + this.plSilence.Checked = Properties.Settings.Default.plSilence; + this.plSlow.Checked = Properties.Settings.Default.plSlow; + this.plThrenody.Checked = Properties.Settings.Default.plThrenody; + this.plVitDown.Checked = Properties.Settings.Default.plVitDown; + this.plWeight.Checked = Properties.Settings.Default.plWeight; + this.AutoCastEngageCheckBox.Checked = Properties.Settings.Default.AutoCastEngageCheckBox; // New UI Elements - plDoomEnabled.Checked = Properties.Settings.Default.plDoomEnabled; - plDoomitem.SelectedIndex = Properties.Settings.Default.plDoomindex; - plDoomitem.Text = Properties.Settings.Default.PLDoomitem; - lowMPcheckBox.Checked = Properties.Settings.Default.lowMPcheckBox; - mpMinCastValue.Value = Properties.Settings.Default.mpMinCastValue; - naSpellsenable.Checked = Properties.Settings.Default.naSpellsenable; - naBlindness.Checked = Properties.Settings.Default.naBlindness; - naCurse.Checked = Properties.Settings.Default.naCurse; - naDisease.Checked = Properties.Settings.Default.naDisease; - naParalysis.Checked = Properties.Settings.Default.naParalysis; - naPetrification.Checked = Properties.Settings.Default.naPetrification; - naPlague.Checked = Properties.Settings.Default.naPlague; - naPoison.Checked = Properties.Settings.Default.naPoison; - naSilence.Checked = Properties.Settings.Default.naSilence; - plProtectra.Checked = Properties.Settings.Default.plProtectra; - plShellra.Checked = Properties.Settings.Default.plShellra; - plProtectralevel.Value = Properties.Settings.Default.plProtectralevel; - plShellralevel.Value = Properties.Settings.Default.plShellralevel; - lowMPuseitem.Checked = Properties.Settings.Default.lowMPuseitem; - mpMintempitemusage.Value = Properties.Settings.Default.mpMintempitemusage; + this.plDoomEnabled.Checked = Properties.Settings.Default.plDoomEnabled; + this.plDoomitem.SelectedIndex = Properties.Settings.Default.plDoomindex; + this.plDoomitem.Text = Properties.Settings.Default.PLDoomitem; + this.lowMPcheckBox.Checked = Properties.Settings.Default.lowMPcheckBox; + this.mpMinCastValue.Value = Properties.Settings.Default.mpMinCastValue; + this.naSpellsenable.Checked = Properties.Settings.Default.naSpellsenable; + this.naBlindness.Checked = Properties.Settings.Default.naBlindness; + this.naCurse.Checked = Properties.Settings.Default.naCurse; + this.naDisease.Checked = Properties.Settings.Default.naDisease; + this.naParalysis.Checked = Properties.Settings.Default.naParalysis; + this.naPetrification.Checked = Properties.Settings.Default.naPetrification; + this.naPlague.Checked = Properties.Settings.Default.naPlague; + this.naPoison.Checked = Properties.Settings.Default.naPoison; + this.naSilence.Checked = Properties.Settings.Default.naSilence; + this.plProtectra.Checked = Properties.Settings.Default.plProtectra; + this.plShellra.Checked = Properties.Settings.Default.plShellra; + this.plProtectralevel.Value = Properties.Settings.Default.plProtectralevel; + this.plShellralevel.Value = Properties.Settings.Default.plShellralevel; + this.lowMPuseitem.Checked = Properties.Settings.Default.lowMPuseitem; + this.mpMintempitemusage.Value = Properties.Settings.Default.mpMintempitemusage; - monitoredAgiDown.Checked = Properties.Settings.Default.monitoredAgiDown; - monitoredAccuracyDown.Checked = Properties.Settings.Default.monitoredAccuracyDown; - monitoredAddle.Checked = Properties.Settings.Default.monitoredAddle; - monitoredAttackDown.Checked = Properties.Settings.Default.monitoredAttackDown; - monitoredBane.Checked = Properties.Settings.Default.monitoredBane; - monitoredBind.Checked = Properties.Settings.Default.monitoredBind; - monitoredBio.Checked = Properties.Settings.Default.monitoredBio; - monitoredBlindness.Checked = Properties.Settings.Default.monitoredBlindness; - monitoredBurn.Checked = Properties.Settings.Default.monitoredBurn; - monitoredChrDown.Checked = Properties.Settings.Default.monitoredChrDown; - monitoredChoke.Checked = Properties.Settings.Default.monitoredChoke; - monitoredCurse.Checked = Properties.Settings.Default.monitoredCurse; - monitoredCurse2.Checked = Properties.Settings.Default.monitoredCurse2; - monitoredDexDown.Checked = Properties.Settings.Default.monitoredDexDown; - monitoredDefenseDown.Checked = Properties.Settings.Default.monitoredDefenseDown; - monitoredDia.Checked = Properties.Settings.Default.monitoredDia; - monitoredDisease.Checked = Properties.Settings.Default.monitoredDisease; - monitoredDoom.Checked = Properties.Settings.Default.monitoredDoom; - monitoredDrown.Checked = Properties.Settings.Default.monitoredDrown; - monitoredElegy.Checked = Properties.Settings.Default.monitoredElegy; - monitoredEvasionDown.Checked = Properties.Settings.Default.monitoredEvasionDown; - monitoredFlash.Checked = Properties.Settings.Default.monitoredFlash; - monitoredFrost.Checked = Properties.Settings.Default.monitoredFrost; - monitoredHelix.Checked = Properties.Settings.Default.monitoredHelix; - monitoredIntDown.Checked = Properties.Settings.Default.monitoredIntDown; - monitoredMndDown.Checked = Properties.Settings.Default.monitoredMndDown; - monitoredMagicAccDown.Checked = Properties.Settings.Default.monitoredMagicAccDown; - monitoredMagicAtkDown.Checked = Properties.Settings.Default.monitoredMagicAtkDown; - monitoredMaxHpDown.Checked = Properties.Settings.Default.monitoredMaxHpDown; - monitoredMaxMpDown.Checked = Properties.Settings.Default.monitoredMaxMpDown; - monitoredMaxTpDown.Checked = Properties.Settings.Default.monitoredMaxTpDown; - monitoredParalysis.Checked = Properties.Settings.Default.monitoredParalysis; - monitoredPetrification.Checked = Properties.Settings.Default.monitoredPetrification; - monitoredPlague.Checked = Properties.Settings.Default.monitoredPlague; - monitoredPoison.Checked = Properties.Settings.Default.monitoredPoison; - monitoredRasp.Checked = Properties.Settings.Default.monitoredRasp; - monitoredRequiem.Checked = Properties.Settings.Default.monitoredRequiem; - monitoredStrDown.Checked = Properties.Settings.Default.monitoredStrDown; - monitoredShock.Checked = Properties.Settings.Default.monitoredShock; - monitoredSilence.Checked = Properties.Settings.Default.monitoredSilence; - monitoredSleep.Checked = Properties.Settings.Default.monitoredSleep; - monitoredSleep2.Checked = Properties.Settings.Default.monitoredSleep2; - monitoredSlow.Checked = Properties.Settings.Default.monitoredSlow; - monitoredThrenody.Checked = Properties.Settings.Default.monitoredThrenody; - monitoredVitDown.Checked = Properties.Settings.Default.monitoredVitDown; - monitoredWeight.Checked = Properties.Settings.Default.monitoredWeight; + this.monitoredAgiDown.Checked = Properties.Settings.Default.monitoredAgiDown; + this.monitoredAccuracyDown.Checked = Properties.Settings.Default.monitoredAccuracyDown; + this.monitoredAddle.Checked = Properties.Settings.Default.monitoredAddle; + this.monitoredAttackDown.Checked = Properties.Settings.Default.monitoredAttackDown; + this.monitoredBane.Checked = Properties.Settings.Default.monitoredBane; + this.monitoredBind.Checked = Properties.Settings.Default.monitoredBind; + this.monitoredBio.Checked = Properties.Settings.Default.monitoredBio; + this.monitoredBlindness.Checked = Properties.Settings.Default.monitoredBlindness; + this.monitoredBurn.Checked = Properties.Settings.Default.monitoredBurn; + this.monitoredChrDown.Checked = Properties.Settings.Default.monitoredChrDown; + this.monitoredChoke.Checked = Properties.Settings.Default.monitoredChoke; + this.monitoredCurse.Checked = Properties.Settings.Default.monitoredCurse; + this.monitoredCurse2.Checked = Properties.Settings.Default.monitoredCurse2; + this.monitoredDexDown.Checked = Properties.Settings.Default.monitoredDexDown; + this.monitoredDefenseDown.Checked = Properties.Settings.Default.monitoredDefenseDown; + this.monitoredDia.Checked = Properties.Settings.Default.monitoredDia; + this.monitoredDisease.Checked = Properties.Settings.Default.monitoredDisease; + this.monitoredDoom.Checked = Properties.Settings.Default.monitoredDoom; + this.monitoredDrown.Checked = Properties.Settings.Default.monitoredDrown; + this.monitoredElegy.Checked = Properties.Settings.Default.monitoredElegy; + this.monitoredEvasionDown.Checked = Properties.Settings.Default.monitoredEvasionDown; + this.monitoredFlash.Checked = Properties.Settings.Default.monitoredFlash; + this.monitoredFrost.Checked = Properties.Settings.Default.monitoredFrost; + this.monitoredHelix.Checked = Properties.Settings.Default.monitoredHelix; + this.monitoredIntDown.Checked = Properties.Settings.Default.monitoredIntDown; + this.monitoredMndDown.Checked = Properties.Settings.Default.monitoredMndDown; + this.monitoredMagicAccDown.Checked = Properties.Settings.Default.monitoredMagicAccDown; + this.monitoredMagicAtkDown.Checked = Properties.Settings.Default.monitoredMagicAtkDown; + this.monitoredMaxHpDown.Checked = Properties.Settings.Default.monitoredMaxHpDown; + this.monitoredMaxMpDown.Checked = Properties.Settings.Default.monitoredMaxMpDown; + this.monitoredMaxTpDown.Checked = Properties.Settings.Default.monitoredMaxTpDown; + this.monitoredParalysis.Checked = Properties.Settings.Default.monitoredParalysis; + this.monitoredPetrification.Checked = Properties.Settings.Default.monitoredPetrification; + this.monitoredPlague.Checked = Properties.Settings.Default.monitoredPlague; + this.monitoredPoison.Checked = Properties.Settings.Default.monitoredPoison; + this.monitoredRasp.Checked = Properties.Settings.Default.monitoredRasp; + this.monitoredRequiem.Checked = Properties.Settings.Default.monitoredRequiem; + this.monitoredStrDown.Checked = Properties.Settings.Default.monitoredStrDown; + this.monitoredShock.Checked = Properties.Settings.Default.monitoredShock; + this.monitoredSilence.Checked = Properties.Settings.Default.monitoredSilence; + this.monitoredSleep.Checked = Properties.Settings.Default.monitoredSleep; + this.monitoredSleep2.Checked = Properties.Settings.Default.monitoredSleep2; + this.monitoredSlow.Checked = Properties.Settings.Default.monitoredSlow; + this.monitoredThrenody.Checked = Properties.Settings.Default.monitoredThrenody; + this.monitoredVitDown.Checked = Properties.Settings.Default.monitoredVitDown; + this.monitoredWeight.Checked = Properties.Settings.Default.monitoredWeight; } private void curePercentage_ValueChanged(object sender, EventArgs e) { - curePercentageValueLabel.Text = curePercentage.Value.ToString(); + this.curePercentageValueLabel.Text = this.curePercentage.Value.ToString(); } private void priorityCurePercentage_ValueChanged(object sender, EventArgs e) { - priorityCurePercentageValueLabel.Text = priorityCurePercentage.Value.ToString(); + this.priorityCurePercentageValueLabel.Text = this.priorityCurePercentage.Value.ToString(); } #endregion #region "== All Settings Saved" private void button4_Click(object sender, EventArgs e) { - Properties.Settings.Default.cure1enabled = cure1enabled.Checked; - Properties.Settings.Default.cure2enabled = cure2enabled.Checked; - Properties.Settings.Default.cure3enabled = cure3enabled.Checked; - Properties.Settings.Default.cure4enabled = cure4enabled.Checked; - Properties.Settings.Default.cure5enabled = cure5enabled.Checked; - Properties.Settings.Default.cure6enabled = cure6enabled.Checked; - Properties.Settings.Default.cure1amount = Convert.ToInt32(cure1amount.Value); - Properties.Settings.Default.cure2amount = Convert.ToInt32(cure2amount.Value); - Properties.Settings.Default.cure3amount = Convert.ToInt32(cure3amount.Value); - Properties.Settings.Default.cure4amount = Convert.ToInt32(cure4amount.Value); - Properties.Settings.Default.cure5amount = Convert.ToInt32(cure5amount.Value); - Properties.Settings.Default.cure6amount = Convert.ToInt32(cure6amount.Value); - Properties.Settings.Default.curePercentage = curePercentage.Value; - Properties.Settings.Default.priorityCurePercentage = priorityCurePercentage.Value; - Properties.Settings.Default.afflatusSolice = afflatusSolace.Checked; - Properties.Settings.Default.afflatusMisery = afflatusMisery.Checked; - Properties.Settings.Default.lightArts = lightArts.Checked; - Properties.Settings.Default.Composure = composure.Checked; - Properties.Settings.Default.Convert = convert.Checked; - Properties.Settings.Default.divineSealBox = divineSealBox.Checked; - Properties.Settings.Default.addWhite = addWhite.Checked; - Properties.Settings.Default.sublimation = sublimation.Checked; - Properties.Settings.Default.autoHasteMinutes = autoHasteMinutes.Value; - Properties.Settings.Default.autoProtect_IVMinutes = autoProtect_IVMinutes.Value; - Properties.Settings.Default.autoProtect_VMinutes = autoProtect_VMinutes.Value; - Properties.Settings.Default.autoShell_IVMinutes = autoShell_IVMinutes.Value; - Properties.Settings.Default.autoShell_VMinutes = autoShell_VMinutes.Value; - Properties.Settings.Default.autoPhalanxIIMinutes = autoPhalanxIIMinutes.Value; - Properties.Settings.Default.autoRegenIVMinutes = autoRegenIVMinutes.Value; - Properties.Settings.Default.autoRegenVMinutes = autoRegenVMinutes.Value; - Properties.Settings.Default.autoRefreshMinutes = autoRefreshMinutes.Value; - Properties.Settings.Default.autoRefreshIIMinutes = autoRefreshIIMinutes.Value; - Properties.Settings.Default.plSilenceItemEnabled = plSilenceItemEnabled.Checked; - Properties.Settings.Default.plSilenceItemIndex = plSilenceItem.SelectedIndex; - Properties.Settings.Default.wakeSleepEnabled = wakeSleepEnabled.Checked; - Properties.Settings.Default.wakeSleepSpellIndex = wakeSleepSpell.SelectedIndex; - Properties.Settings.Default.wakeSleepSpellString = wakeSleepSpell.Items[wakeSleepSpell.SelectedIndex].ToString(); - Properties.Settings.Default.plDebuffEnabled = plDebuffEnabled.Checked; - Properties.Settings.Default.monitoredDebuffEnabled = monitoredDebuffEnabled.Checked; - Properties.Settings.Default.plSilenceItemString = plSilenceItem.Items[plSilenceItem.SelectedIndex].ToString(); - Properties.Settings.Default.plBlink = plBlink.Checked; - Properties.Settings.Default.plReraise = plReraise.Checked; - if (plReraiseLevel1.Checked) + Properties.Settings.Default.cure1enabled = this.cure1enabled.Checked; + Properties.Settings.Default.cure2enabled = this.cure2enabled.Checked; + Properties.Settings.Default.cure3enabled = this.cure3enabled.Checked; + Properties.Settings.Default.cure4enabled = this.cure4enabled.Checked; + Properties.Settings.Default.cure5enabled = this.cure5enabled.Checked; + Properties.Settings.Default.cure6enabled = this.cure6enabled.Checked; + Properties.Settings.Default.cure1amount = Convert.ToInt32(this.cure1amount.Value); + Properties.Settings.Default.cure2amount = Convert.ToInt32(this.cure2amount.Value); + Properties.Settings.Default.cure3amount = Convert.ToInt32(this.cure3amount.Value); + Properties.Settings.Default.cure4amount = Convert.ToInt32(this.cure4amount.Value); + Properties.Settings.Default.cure5amount = Convert.ToInt32(this.cure5amount.Value); + Properties.Settings.Default.cure6amount = Convert.ToInt32(this.cure6amount.Value); + Properties.Settings.Default.curePercentage = this.curePercentage.Value; + Properties.Settings.Default.priorityCurePercentage = this.priorityCurePercentage.Value; + Properties.Settings.Default.afflatusSolice = this.afflatusSolace.Checked; + Properties.Settings.Default.afflatusMisery = this.afflatusMisery.Checked; + Properties.Settings.Default.lightArts = this.lightArts.Checked; + Properties.Settings.Default.Composure = this.composure.Checked; + Properties.Settings.Default.Convert = this.convert.Checked; + Properties.Settings.Default.divineSealBox = this.divineSealBox.Checked; + Properties.Settings.Default.addWhite = this.addWhite.Checked; + Properties.Settings.Default.sublimation = this.sublimation.Checked; + Properties.Settings.Default.autoHasteMinutes = this.autoHasteMinutes.Value; + Properties.Settings.Default.autoProtect_IVMinutes = this.autoProtect_IVMinutes.Value; + Properties.Settings.Default.autoProtect_VMinutes = this.autoProtect_VMinutes.Value; + Properties.Settings.Default.autoShell_IVMinutes = this.autoShell_IVMinutes.Value; + Properties.Settings.Default.autoShell_VMinutes = this.autoShell_VMinutes.Value; + Properties.Settings.Default.autoPhalanxIIMinutes = this.autoPhalanxIIMinutes.Value; + Properties.Settings.Default.autoRegenIVMinutes = this.autoRegenIVMinutes.Value; + Properties.Settings.Default.autoRegenVMinutes = this.autoRegenVMinutes.Value; + Properties.Settings.Default.autoRefreshMinutes = this.autoRefreshMinutes.Value; + Properties.Settings.Default.autoRefreshIIMinutes = this.autoRefreshIIMinutes.Value; + Properties.Settings.Default.plSilenceItemEnabled = this.plSilenceItemEnabled.Checked; + Properties.Settings.Default.plSilenceItemIndex = this.plSilenceItem.SelectedIndex; + Properties.Settings.Default.wakeSleepEnabled = this.wakeSleepEnabled.Checked; + Properties.Settings.Default.wakeSleepSpellIndex = this.wakeSleepSpell.SelectedIndex; + Properties.Settings.Default.wakeSleepSpellString = this.wakeSleepSpell.Items[this.wakeSleepSpell.SelectedIndex].ToString(); + Properties.Settings.Default.plDebuffEnabled = this.plDebuffEnabled.Checked; + Properties.Settings.Default.monitoredDebuffEnabled = this.monitoredDebuffEnabled.Checked; + Properties.Settings.Default.plSilenceItemString = this.plSilenceItem.Items[this.plSilenceItem.SelectedIndex].ToString(); + Properties.Settings.Default.plBlink = this.plBlink.Checked; + Properties.Settings.Default.plReraise = this.plReraise.Checked; + if (this.plReraiseLevel1.Checked) { Properties.Settings.Default.plReraiseLevel = 1; } - else if (plReraiseLevel2.Checked) + else if (this.plReraiseLevel2.Checked) { Properties.Settings.Default.plReraiseLevel = 2; } - else if (plReraiseLevel3.Checked) + else if (this.plReraiseLevel3.Checked) { Properties.Settings.Default.plReraiseLevel = 3; } - Properties.Settings.Default.plRefresh = plRefresh.Checked; - if (plRefreshLevel1.Checked) + Properties.Settings.Default.plRefresh = this.plRefresh.Checked; + if (this.plRefreshLevel1.Checked) { Properties.Settings.Default.plRefreshLevel = 1; } - else if (plRefreshLevel2.Checked) + else if (this.plRefreshLevel2.Checked) { Properties.Settings.Default.plRefreshLevel = 2; } - Properties.Settings.Default.plStoneskin = plStoneskin.Checked; - Properties.Settings.Default.plShellra = plShellra.Checked; - Properties.Settings.Default.plProtectra = plProtectra.Checked; - Properties.Settings.Default.plProtectralevel = plProtectralevel.Value; - Properties.Settings.Default.plShellralevel = plShellralevel.Value; + Properties.Settings.Default.plStoneskin = this.plStoneskin.Checked; + Properties.Settings.Default.plShellra = this.plShellra.Checked; + Properties.Settings.Default.plProtectra = this.plProtectra.Checked; + Properties.Settings.Default.plProtectralevel = this.plProtectralevel.Value; + Properties.Settings.Default.plShellralevel = this.plShellralevel.Value; - Properties.Settings.Default.plAgiDown = plAgiDown.Checked; - Properties.Settings.Default.plAccuracyDown = plAccuracyDown.Checked; - Properties.Settings.Default.plAddle = plAddle.Checked; - Properties.Settings.Default.plAttackDown = plAttackDown.Checked; - Properties.Settings.Default.plBane = plBane.Checked; - Properties.Settings.Default.plBind = plBind.Checked; - Properties.Settings.Default.plBio = plBio.Checked; - Properties.Settings.Default.plBlindness = plBlindness.Checked; - Properties.Settings.Default.plBurn = plBurn.Checked; - Properties.Settings.Default.plChrDown = plChrDown.Checked; - Properties.Settings.Default.plChoke = plChoke.Checked; - Properties.Settings.Default.plCurse = plCurse.Checked; - Properties.Settings.Default.plCurse2 = plCurse2.Checked; - Properties.Settings.Default.plDexDown = plDexDown.Checked; - Properties.Settings.Default.plDefenseDown = plDefenseDown.Checked; - Properties.Settings.Default.plDia = plDia.Checked; - Properties.Settings.Default.plDisease = plDisease.Checked; - Properties.Settings.Default.plDoom = plDoom.Checked; - Properties.Settings.Default.plDrown = plDrown.Checked; - Properties.Settings.Default.plElegy = plElegy.Checked; - Properties.Settings.Default.plEvasionDown = plEvasionDown.Checked; - Properties.Settings.Default.plFlash = plFlash.Checked; - Properties.Settings.Default.plFrost = plFrost.Checked; - Properties.Settings.Default.plHelix = plHelix.Checked; - Properties.Settings.Default.plIntDown = plIntDown.Checked; - Properties.Settings.Default.plMndDown = plMndDown.Checked; - Properties.Settings.Default.plMagicAccDown = plMagicAccDown.Checked; - Properties.Settings.Default.plMagicAtkDown = plMagicAtkDown.Checked; - Properties.Settings.Default.plMaxHpDown = plMaxHpDown.Checked; - Properties.Settings.Default.plMaxMpDown = plMaxMpDown.Checked; - Properties.Settings.Default.plMaxTpDown = plMaxTpDown.Checked; - Properties.Settings.Default.plParalysis = plParalysis.Checked; - Properties.Settings.Default.plPlague = plPlague.Checked; - Properties.Settings.Default.plPoison = plPoison.Checked; - Properties.Settings.Default.plRasp = plRasp.Checked; - Properties.Settings.Default.plRequiem = plRequiem.Checked; - Properties.Settings.Default.plStrDown = plStrDown.Checked; - Properties.Settings.Default.plShock = plShock.Checked; - Properties.Settings.Default.plSilence = plSilence.Checked; - Properties.Settings.Default.plSlow = plSlow.Checked; - Properties.Settings.Default.plThrenody = plThrenody.Checked; - Properties.Settings.Default.plVitDown = plVitDown.Checked; - Properties.Settings.Default.plWeight = plWeight.Checked; + Properties.Settings.Default.plAgiDown = this.plAgiDown.Checked; + Properties.Settings.Default.plAccuracyDown = this.plAccuracyDown.Checked; + Properties.Settings.Default.plAddle = this.plAddle.Checked; + Properties.Settings.Default.plAttackDown = this.plAttackDown.Checked; + Properties.Settings.Default.plBane = this.plBane.Checked; + Properties.Settings.Default.plBind = this.plBind.Checked; + Properties.Settings.Default.plBio = this.plBio.Checked; + Properties.Settings.Default.plBlindness = this.plBlindness.Checked; + Properties.Settings.Default.plBurn = this.plBurn.Checked; + Properties.Settings.Default.plChrDown = this.plChrDown.Checked; + Properties.Settings.Default.plChoke = this.plChoke.Checked; + Properties.Settings.Default.plCurse = this.plCurse.Checked; + Properties.Settings.Default.plCurse2 = this.plCurse2.Checked; + Properties.Settings.Default.plDexDown = this.plDexDown.Checked; + Properties.Settings.Default.plDefenseDown = this.plDefenseDown.Checked; + Properties.Settings.Default.plDia = this.plDia.Checked; + Properties.Settings.Default.plDisease = this.plDisease.Checked; + Properties.Settings.Default.plDoom = this.plDoom.Checked; + Properties.Settings.Default.plDrown = this.plDrown.Checked; + Properties.Settings.Default.plElegy = this.plElegy.Checked; + Properties.Settings.Default.plEvasionDown = this.plEvasionDown.Checked; + Properties.Settings.Default.plFlash = this.plFlash.Checked; + Properties.Settings.Default.plFrost = this.plFrost.Checked; + Properties.Settings.Default.plHelix = this.plHelix.Checked; + Properties.Settings.Default.plIntDown = this.plIntDown.Checked; + Properties.Settings.Default.plMndDown = this.plMndDown.Checked; + Properties.Settings.Default.plMagicAccDown = this.plMagicAccDown.Checked; + Properties.Settings.Default.plMagicAtkDown = this.plMagicAtkDown.Checked; + Properties.Settings.Default.plMaxHpDown = this.plMaxHpDown.Checked; + Properties.Settings.Default.plMaxMpDown = this.plMaxMpDown.Checked; + Properties.Settings.Default.plMaxTpDown = this.plMaxTpDown.Checked; + Properties.Settings.Default.plParalysis = this.plParalysis.Checked; + Properties.Settings.Default.plPlague = this.plPlague.Checked; + Properties.Settings.Default.plPoison = this.plPoison.Checked; + Properties.Settings.Default.plRasp = this.plRasp.Checked; + Properties.Settings.Default.plRequiem = this.plRequiem.Checked; + Properties.Settings.Default.plStrDown = this.plStrDown.Checked; + Properties.Settings.Default.plShock = this.plShock.Checked; + Properties.Settings.Default.plSilence = this.plSilence.Checked; + Properties.Settings.Default.plSlow = this.plSlow.Checked; + Properties.Settings.Default.plThrenody = this.plThrenody.Checked; + Properties.Settings.Default.plVitDown = this.plVitDown.Checked; + Properties.Settings.Default.plWeight = this.plWeight.Checked; // New UI Elements - Properties.Settings.Default.plDoomEnabled = plDoomEnabled.Checked; - Properties.Settings.Default.plDoomindex = plDoomitem.SelectedIndex; - Properties.Settings.Default.PLDoomitem = plDoomitem.Items[Properties.Settings.Default.plDoomindex].ToString(); - Properties.Settings.Default.lowMPcheckBox = lowMPcheckBox.Checked; - Properties.Settings.Default.mpMinCastValue = mpMinCastValue.Value; - Properties.Settings.Default.naSpellsenable = naSpellsenable.Checked; - Properties.Settings.Default.naBlindness = naBlindness.Checked; - Properties.Settings.Default.naCurse = naCurse.Checked; - Properties.Settings.Default.naDisease = naDisease.Checked; - Properties.Settings.Default.naParalysis = naParalysis.Checked; - Properties.Settings.Default.naPetrification = naPetrification.Checked; - Properties.Settings.Default.naPlague = naPlague.Checked; - Properties.Settings.Default.naPoison = naPoison.Checked; - Properties.Settings.Default.naSilence = naSilence.Checked; - Properties.Settings.Default.lowMPuseitem = lowMPuseitem.Checked; - Properties.Settings.Default.mpMintempitemusage = mpMintempitemusage.Value; + Properties.Settings.Default.plDoomEnabled = this.plDoomEnabled.Checked; + Properties.Settings.Default.plDoomindex = this.plDoomitem.SelectedIndex; + Properties.Settings.Default.PLDoomitem = this.plDoomitem.Items[Properties.Settings.Default.plDoomindex].ToString(); + Properties.Settings.Default.lowMPcheckBox = this.lowMPcheckBox.Checked; + Properties.Settings.Default.mpMinCastValue = this.mpMinCastValue.Value; + Properties.Settings.Default.naSpellsenable = this.naSpellsenable.Checked; + Properties.Settings.Default.naBlindness = this.naBlindness.Checked; + Properties.Settings.Default.naCurse = this.naCurse.Checked; + Properties.Settings.Default.naDisease = this.naDisease.Checked; + Properties.Settings.Default.naParalysis = this.naParalysis.Checked; + Properties.Settings.Default.naPetrification = this.naPetrification.Checked; + Properties.Settings.Default.naPlague = this.naPlague.Checked; + Properties.Settings.Default.naPoison = this.naPoison.Checked; + Properties.Settings.Default.naSilence = this.naSilence.Checked; + Properties.Settings.Default.lowMPuseitem = this.lowMPuseitem.Checked; + Properties.Settings.Default.mpMintempitemusage = this.mpMintempitemusage.Value; - Properties.Settings.Default.monitoredAgiDown = monitoredAgiDown.Checked; - Properties.Settings.Default.monitoredAccuracyDown = monitoredAccuracyDown.Checked; - Properties.Settings.Default.monitoredAddle = monitoredAddle.Checked; - Properties.Settings.Default.monitoredAttackDown = monitoredAttackDown.Checked; - Properties.Settings.Default.monitoredBane = monitoredBane.Checked; - Properties.Settings.Default.monitoredBind = monitoredBind.Checked; - Properties.Settings.Default.monitoredBio = monitoredBio.Checked; - Properties.Settings.Default.monitoredBlindness = monitoredBlindness.Checked; - Properties.Settings.Default.monitoredBurn = monitoredBurn.Checked; - Properties.Settings.Default.monitoredChrDown = monitoredChrDown.Checked; - Properties.Settings.Default.monitoredChoke = monitoredChoke.Checked; - Properties.Settings.Default.monitoredCurse = monitoredCurse.Checked; - Properties.Settings.Default.monitoredCurse2 = monitoredCurse2.Checked; - Properties.Settings.Default.monitoredDexDown = monitoredDexDown.Checked; - Properties.Settings.Default.monitoredDefenseDown = monitoredDefenseDown.Checked; - Properties.Settings.Default.monitoredDia = monitoredDia.Checked; - Properties.Settings.Default.monitoredDisease = monitoredDisease.Checked; - Properties.Settings.Default.monitoredDoom = monitoredDoom.Checked; - Properties.Settings.Default.monitoredDrown = monitoredDrown.Checked; - Properties.Settings.Default.monitoredElegy = monitoredElegy.Checked; - Properties.Settings.Default.monitoredEvasionDown = monitoredEvasionDown.Checked; - Properties.Settings.Default.monitoredFlash = monitoredFlash.Checked; - Properties.Settings.Default.monitoredFrost = monitoredFrost.Checked; - Properties.Settings.Default.monitoredHelix = monitoredHelix.Checked; - Properties.Settings.Default.monitoredIntDown = monitoredIntDown.Checked; - Properties.Settings.Default.monitoredMndDown = monitoredMndDown.Checked; - Properties.Settings.Default.monitoredMagicAccDown = monitoredMagicAccDown.Checked; - Properties.Settings.Default.monitoredMagicAtkDown = monitoredMagicAtkDown.Checked; - Properties.Settings.Default.monitoredMaxHpDown = monitoredMaxHpDown.Checked; - Properties.Settings.Default.monitoredMaxMpDown = monitoredMaxMpDown.Checked; - Properties.Settings.Default.monitoredMaxTpDown = monitoredMaxTpDown.Checked; - Properties.Settings.Default.monitoredParalysis = monitoredParalysis.Checked; - Properties.Settings.Default.monitoredPetrification = monitoredPetrification.Checked; - Properties.Settings.Default.monitoredPlague = monitoredPlague.Checked; - Properties.Settings.Default.monitoredPoison = monitoredPoison.Checked; - Properties.Settings.Default.monitoredRasp = monitoredRasp.Checked; - Properties.Settings.Default.monitoredRequiem = monitoredRequiem.Checked; - Properties.Settings.Default.monitoredStrDown = monitoredStrDown.Checked; - Properties.Settings.Default.monitoredShock = monitoredShock.Checked; - Properties.Settings.Default.monitoredSilence = monitoredSilence.Checked; - Properties.Settings.Default.monitoredSleep = monitoredSleep.Checked; - Properties.Settings.Default.monitoredSleep2 = monitoredSleep2.Checked; - Properties.Settings.Default.monitoredSlow = monitoredSlow.Checked; - Properties.Settings.Default.monitoredThrenody = monitoredThrenody.Checked; - Properties.Settings.Default.monitoredVitDown = monitoredVitDown.Checked; - Properties.Settings.Default.monitoredWeight = monitoredWeight.Checked; - Properties.Settings.Default.AutoCastEngageCheckBox = AutoCastEngageCheckBox.Checked; + Properties.Settings.Default.monitoredAgiDown = this.monitoredAgiDown.Checked; + Properties.Settings.Default.monitoredAccuracyDown = this.monitoredAccuracyDown.Checked; + Properties.Settings.Default.monitoredAddle = this.monitoredAddle.Checked; + Properties.Settings.Default.monitoredAttackDown = this.monitoredAttackDown.Checked; + Properties.Settings.Default.monitoredBane = this.monitoredBane.Checked; + Properties.Settings.Default.monitoredBind = this.monitoredBind.Checked; + Properties.Settings.Default.monitoredBio = this.monitoredBio.Checked; + Properties.Settings.Default.monitoredBlindness = this.monitoredBlindness.Checked; + Properties.Settings.Default.monitoredBurn = this.monitoredBurn.Checked; + Properties.Settings.Default.monitoredChrDown = this.monitoredChrDown.Checked; + Properties.Settings.Default.monitoredChoke = this.monitoredChoke.Checked; + Properties.Settings.Default.monitoredCurse = this.monitoredCurse.Checked; + Properties.Settings.Default.monitoredCurse2 = this.monitoredCurse2.Checked; + Properties.Settings.Default.monitoredDexDown = this.monitoredDexDown.Checked; + Properties.Settings.Default.monitoredDefenseDown = this.monitoredDefenseDown.Checked; + Properties.Settings.Default.monitoredDia = this.monitoredDia.Checked; + Properties.Settings.Default.monitoredDisease = this.monitoredDisease.Checked; + Properties.Settings.Default.monitoredDoom = this.monitoredDoom.Checked; + Properties.Settings.Default.monitoredDrown = this.monitoredDrown.Checked; + Properties.Settings.Default.monitoredElegy = this.monitoredElegy.Checked; + Properties.Settings.Default.monitoredEvasionDown = this.monitoredEvasionDown.Checked; + Properties.Settings.Default.monitoredFlash = this.monitoredFlash.Checked; + Properties.Settings.Default.monitoredFrost = this.monitoredFrost.Checked; + Properties.Settings.Default.monitoredHelix = this.monitoredHelix.Checked; + Properties.Settings.Default.monitoredIntDown = this.monitoredIntDown.Checked; + Properties.Settings.Default.monitoredMndDown = this.monitoredMndDown.Checked; + Properties.Settings.Default.monitoredMagicAccDown = this.monitoredMagicAccDown.Checked; + Properties.Settings.Default.monitoredMagicAtkDown = this.monitoredMagicAtkDown.Checked; + Properties.Settings.Default.monitoredMaxHpDown = this.monitoredMaxHpDown.Checked; + Properties.Settings.Default.monitoredMaxMpDown = this.monitoredMaxMpDown.Checked; + Properties.Settings.Default.monitoredMaxTpDown = this.monitoredMaxTpDown.Checked; + Properties.Settings.Default.monitoredParalysis = this.monitoredParalysis.Checked; + Properties.Settings.Default.monitoredPetrification = this.monitoredPetrification.Checked; + Properties.Settings.Default.monitoredPlague = this.monitoredPlague.Checked; + Properties.Settings.Default.monitoredPoison = this.monitoredPoison.Checked; + Properties.Settings.Default.monitoredRasp = this.monitoredRasp.Checked; + Properties.Settings.Default.monitoredRequiem = this.monitoredRequiem.Checked; + Properties.Settings.Default.monitoredStrDown = this.monitoredStrDown.Checked; + Properties.Settings.Default.monitoredShock = this.monitoredShock.Checked; + Properties.Settings.Default.monitoredSilence = this.monitoredSilence.Checked; + Properties.Settings.Default.monitoredSleep = this.monitoredSleep.Checked; + Properties.Settings.Default.monitoredSleep2 = this.monitoredSleep2.Checked; + Properties.Settings.Default.monitoredSlow = this.monitoredSlow.Checked; + Properties.Settings.Default.monitoredThrenody = this.monitoredThrenody.Checked; + Properties.Settings.Default.monitoredVitDown = this.monitoredVitDown.Checked; + Properties.Settings.Default.monitoredWeight = this.monitoredWeight.Checked; + Properties.Settings.Default.AutoCastEngageCheckBox = this.AutoCastEngageCheckBox.Checked; Properties.Settings.Default.Save(); this.Close(); @@ -394,97 +394,183 @@ private void button4_Click(object sender, EventArgs e) #region "== PL Debuff Check Boxes" private void plDebuffEnabled_CheckedChanged(object sender, EventArgs e) { - if (plDebuffEnabled.Checked) + if (this.plDebuffEnabled.Checked) { - plAgiDown.Checked = true; plAgiDown.Enabled = true; - plAccuracyDown.Checked = true; plAccuracyDown.Enabled = true; - plAddle.Checked = true; plAddle.Enabled = true; - plAttackDown.Checked = true; plAttackDown.Enabled = true; - plBane.Checked = true; plBane.Enabled = true; - plBind.Checked = true; plBind.Enabled = true; - plBio.Checked = true; plBio.Enabled = true; - plBlindness.Checked = true; plBlindness.Enabled = true; - plBurn.Checked = true; plBurn.Enabled = true; - plChrDown.Checked = true; plChrDown.Enabled = true; - plChoke.Checked = true; plChoke.Enabled = true; - plCurse.Checked = true; plCurse.Enabled = true; - plCurse2.Checked = true; plCurse2.Enabled = true; - plDexDown.Checked = true; plDexDown.Enabled = true; - plDefenseDown.Checked = true; plDefenseDown.Enabled = true; - plDia.Checked = true; plDia.Enabled = true; - plDisease.Checked = true; plDisease.Enabled = true; - plDoom.Checked = true; plDoom.Enabled = true; - plDrown.Checked = true; plDrown.Enabled = true; - plElegy.Checked = true; plElegy.Enabled = true; - plEvasionDown.Checked = true; plEvasionDown.Enabled = true; - plFlash.Checked = true; plFlash.Enabled = true; - plFrost.Checked = true; plFrost.Enabled = true; - plHelix.Checked = true; plHelix.Enabled = true; - plIntDown.Checked = true; plIntDown.Enabled = true; - plMndDown.Checked = true; plMndDown.Enabled = true; - plMagicAccDown.Checked = true; plMagicAccDown.Enabled = true; - plMagicAtkDown.Checked = true; plMagicAtkDown.Enabled = true; - plMaxHpDown.Checked = true; plMaxHpDown.Enabled = true; - plMaxMpDown.Checked = true; plMaxMpDown.Enabled = true; - plMaxTpDown.Checked = true; plMaxTpDown.Enabled = true; - plParalysis.Checked = true; plParalysis.Enabled = true; - plPlague.Checked = true; plPlague.Enabled = true; - plPoison.Checked = true; plPoison.Enabled = true; - plRasp.Checked = true; plRasp.Enabled = true; - plRequiem.Checked = true; plRequiem.Enabled = true; - plStrDown.Checked = true; plStrDown.Enabled = true; - plShock.Checked = true; plShock.Enabled = true; - plSilence.Checked = true; plSilence.Enabled = true; - plSlow.Checked = true; plSlow.Enabled = true; - plThrenody.Checked = true; plThrenody.Enabled = true; - plVitDown.Checked = true; plVitDown.Enabled = true; - plWeight.Checked = true; plWeight.Enabled = true; + this.plAgiDown.Checked = true; + this.plAgiDown.Enabled = true; + this.plAccuracyDown.Checked = true; + this.plAccuracyDown.Enabled = true; + this.plAddle.Checked = true; + this.plAddle.Enabled = true; + this.plAttackDown.Checked = true; + this.plAttackDown.Enabled = true; + this.plBane.Checked = true; + this.plBane.Enabled = true; + this.plBind.Checked = true; + this.plBind.Enabled = true; + this.plBio.Checked = true; + this.plBio.Enabled = true; + this.plBlindness.Checked = true; + this.plBlindness.Enabled = true; + this.plBurn.Checked = true; + this.plBurn.Enabled = true; + this.plChrDown.Checked = true; + this.plChrDown.Enabled = true; + this.plChoke.Checked = true; + this.plChoke.Enabled = true; + this.plCurse.Checked = true; + this.plCurse.Enabled = true; + this.plCurse2.Checked = true; + this.plCurse2.Enabled = true; + this.plDexDown.Checked = true; + this.plDexDown.Enabled = true; + this.plDefenseDown.Checked = true; + this.plDefenseDown.Enabled = true; + this.plDia.Checked = true; + this.plDia.Enabled = true; + this.plDisease.Checked = true; + this.plDisease.Enabled = true; + this.plDoom.Checked = true; + this.plDoom.Enabled = true; + this.plDrown.Checked = true; + this.plDrown.Enabled = true; + this.plElegy.Checked = true; + this.plElegy.Enabled = true; + this.plEvasionDown.Checked = true; + this.plEvasionDown.Enabled = true; + this.plFlash.Checked = true; + this.plFlash.Enabled = true; + this.plFrost.Checked = true; + this.plFrost.Enabled = true; + this.plHelix.Checked = true; + this.plHelix.Enabled = true; + this.plIntDown.Checked = true; + this.plIntDown.Enabled = true; + this.plMndDown.Checked = true; + this.plMndDown.Enabled = true; + this.plMagicAccDown.Checked = true; + this.plMagicAccDown.Enabled = true; + this.plMagicAtkDown.Checked = true; + this.plMagicAtkDown.Enabled = true; + this.plMaxHpDown.Checked = true; + this.plMaxHpDown.Enabled = true; + this.plMaxMpDown.Checked = true; + this.plMaxMpDown.Enabled = true; + this.plMaxTpDown.Checked = true; + this.plMaxTpDown.Enabled = true; + this.plParalysis.Checked = true; + this.plParalysis.Enabled = true; + this.plPlague.Checked = true; + this.plPlague.Enabled = true; + this.plPoison.Checked = true; + this.plPoison.Enabled = true; + this.plRasp.Checked = true; + this.plRasp.Enabled = true; + this.plRequiem.Checked = true; + this.plRequiem.Enabled = true; + this.plStrDown.Checked = true; + this.plStrDown.Enabled = true; + this.plShock.Checked = true; + this.plShock.Enabled = true; + this.plSilence.Checked = true; + this.plSilence.Enabled = true; + this.plSlow.Checked = true; + this.plSlow.Enabled = true; + this.plThrenody.Checked = true; + this.plThrenody.Enabled = true; + this.plVitDown.Checked = true; + this.plVitDown.Enabled = true; + this.plWeight.Checked = true; + this.plWeight.Enabled = true; } - else if (plDebuffEnabled.Checked == false) + else if (this.plDebuffEnabled.Checked == false) { - plAgiDown.Checked = false; plAgiDown.Enabled = false; - plAccuracyDown.Checked = false; plAccuracyDown.Enabled = false; - plAddle.Checked = false; plAddle.Enabled = false; - plAttackDown.Checked = false; plAttackDown.Enabled = false; - plBane.Checked = false; plBane.Enabled = false; - plBind.Checked = false; plBind.Enabled = false; - plBio.Checked = false; plBio.Enabled = false; - plBlindness.Checked = false; plBlindness.Enabled = false; - plBurn.Checked = false; plBurn.Enabled = false; - plChrDown.Checked = false; plChrDown.Enabled = false; - plChoke.Checked = false; plChoke.Enabled = false; - plCurse.Checked = false; plCurse.Enabled = false; - plCurse2.Checked = false; plCurse2.Enabled = false; - plDexDown.Checked = false; plDexDown.Enabled = false; - plDefenseDown.Checked = false; plDefenseDown.Enabled = false; - plDia.Checked = false; plDia.Enabled = false; - plDisease.Checked = false; plDisease.Enabled = false; - plDoom.Checked = false; plDoom.Enabled = false; - plDrown.Checked = false; plDrown.Enabled = false; - plElegy.Checked = false; plElegy.Enabled = false; - plEvasionDown.Checked = false; plEvasionDown.Enabled = false; - plFlash.Checked = false; plFlash.Enabled = false; - plFrost.Checked = false; plFrost.Enabled = false; - plHelix.Checked = false; plHelix.Enabled = false; - plIntDown.Checked = false; plIntDown.Enabled = false; - plMndDown.Checked = false; plMndDown.Enabled = false; - plMagicAccDown.Checked = false; plMagicAccDown.Enabled = false; - plMagicAtkDown.Checked = false; plMagicAtkDown.Enabled = false; - plMaxHpDown.Checked = false; plMaxHpDown.Enabled = false; - plMaxMpDown.Checked = false; plMaxMpDown.Enabled = false; - plMaxTpDown.Checked = false; plMaxTpDown.Enabled = false; - plParalysis.Checked = false; plParalysis.Enabled = false; - plPlague.Checked = false; plPlague.Enabled = false; - plPoison.Checked = false; plPoison.Enabled = false; - plRasp.Checked = false; plRasp.Enabled = false; - plRequiem.Checked = false; plRequiem.Enabled = false; - plStrDown.Checked = false; plStrDown.Enabled = false; - plShock.Checked = false; plShock.Enabled = false; - plSilence.Checked = false; plSilence.Enabled = false; - plSlow.Checked = false; plSlow.Enabled = false; - plThrenody.Checked = false; plThrenody.Enabled = false; - plVitDown.Checked = false; plVitDown.Enabled = false; - plWeight.Checked = false; plWeight.Enabled = false; + this.plAgiDown.Checked = false; + this.plAgiDown.Enabled = false; + this.plAccuracyDown.Checked = false; + this.plAccuracyDown.Enabled = false; + this.plAddle.Checked = false; + this.plAddle.Enabled = false; + this.plAttackDown.Checked = false; + this.plAttackDown.Enabled = false; + this.plBane.Checked = false; + this.plBane.Enabled = false; + this.plBind.Checked = false; + this.plBind.Enabled = false; + this.plBio.Checked = false; + this.plBio.Enabled = false; + this.plBlindness.Checked = false; + this.plBlindness.Enabled = false; + this.plBurn.Checked = false; + this.plBurn.Enabled = false; + this.plChrDown.Checked = false; + this.plChrDown.Enabled = false; + this.plChoke.Checked = false; + this.plChoke.Enabled = false; + this.plCurse.Checked = false; + this.plCurse.Enabled = false; + this.plCurse2.Checked = false; + this.plCurse2.Enabled = false; + this.plDexDown.Checked = false; + this.plDexDown.Enabled = false; + this.plDefenseDown.Checked = false; + this.plDefenseDown.Enabled = false; + this.plDia.Checked = false; + this.plDia.Enabled = false; + this.plDisease.Checked = false; + this.plDisease.Enabled = false; + this.plDoom.Checked = false; + this.plDoom.Enabled = false; + this.plDrown.Checked = false; + this.plDrown.Enabled = false; + this.plElegy.Checked = false; + this.plElegy.Enabled = false; + this.plEvasionDown.Checked = false; + this.plEvasionDown.Enabled = false; + this.plFlash.Checked = false; + this.plFlash.Enabled = false; + this.plFrost.Checked = false; + this.plFrost.Enabled = false; + this.plHelix.Checked = false; + this.plHelix.Enabled = false; + this.plIntDown.Checked = false; + this.plIntDown.Enabled = false; + this.plMndDown.Checked = false; + this.plMndDown.Enabled = false; + this.plMagicAccDown.Checked = false; + this.plMagicAccDown.Enabled = false; + this.plMagicAtkDown.Checked = false; + this.plMagicAtkDown.Enabled = false; + this.plMaxHpDown.Checked = false; + this.plMaxHpDown.Enabled = false; + this.plMaxMpDown.Checked = false; + this.plMaxMpDown.Enabled = false; + this.plMaxTpDown.Checked = false; + this.plMaxTpDown.Enabled = false; + this.plParalysis.Checked = false; + this.plParalysis.Enabled = false; + this.plPlague.Checked = false; + this.plPlague.Enabled = false; + this.plPoison.Checked = false; + this.plPoison.Enabled = false; + this.plRasp.Checked = false; + this.plRasp.Enabled = false; + this.plRequiem.Checked = false; + this.plRequiem.Enabled = false; + this.plStrDown.Checked = false; + this.plStrDown.Enabled = false; + this.plShock.Checked = false; + this.plShock.Enabled = false; + this.plSilence.Checked = false; + this.plSilence.Enabled = false; + this.plSlow.Checked = false; + this.plSlow.Enabled = false; + this.plThrenody.Checked = false; + this.plThrenody.Enabled = false; + this.plVitDown.Checked = false; + this.plVitDown.Enabled = false; + this.plWeight.Checked = false; + this.plWeight.Enabled = false; } } #endregion @@ -492,103 +578,195 @@ private void plDebuffEnabled_CheckedChanged(object sender, EventArgs e) #region "== Monitored Player Debuff Check Boxes" private void monitoredDebuffEnabled_CheckedChanged(object sender, EventArgs e) { - if (monitoredDebuffEnabled.Checked) + if (this.monitoredDebuffEnabled.Checked) { - monitoredAgiDown.Checked = true; monitoredAgiDown.Enabled = true; - monitoredAccuracyDown.Checked = true; monitoredAccuracyDown.Enabled = true; - monitoredAddle.Checked = true; monitoredAddle.Enabled = true; - monitoredAttackDown.Checked = true; monitoredAttackDown.Enabled = true; - monitoredBane.Checked = true; monitoredBane.Enabled = true; - monitoredBind.Checked = true; monitoredBind.Enabled = true; - monitoredBio.Checked = true; monitoredBio.Enabled = true; - monitoredBlindness.Checked = true; monitoredBlindness.Enabled = true; - monitoredBurn.Checked = true; monitoredBurn.Enabled = true; - monitoredChrDown.Checked = true; monitoredChrDown.Enabled = true; - monitoredChoke.Checked = true; monitoredChoke.Enabled = true; - monitoredCurse.Checked = true; monitoredCurse.Enabled = true; - monitoredCurse2.Checked = true; monitoredCurse2.Enabled = true; - monitoredDexDown.Checked = true; monitoredDexDown.Enabled = true; - monitoredDefenseDown.Checked = true; monitoredDefenseDown.Enabled = true; - monitoredDia.Checked = true; monitoredDia.Enabled = true; - monitoredDisease.Checked = true; monitoredDisease.Enabled = true; - monitoredDoom.Checked = true; monitoredDoom.Enabled = true; - monitoredDrown.Checked = true; monitoredDrown.Enabled = true; - monitoredElegy.Checked = true; monitoredElegy.Enabled = true; - monitoredEvasionDown.Checked = true; monitoredEvasionDown.Enabled = true; - monitoredFlash.Checked = true; monitoredFlash.Enabled = true; - monitoredFrost.Checked = true; monitoredFrost.Enabled = true; - monitoredHelix.Checked = true; monitoredHelix.Enabled = true; - monitoredIntDown.Checked = true; monitoredIntDown.Enabled = true; - monitoredMndDown.Checked = true; monitoredMndDown.Enabled = true; - monitoredMagicAccDown.Checked = true; monitoredMagicAccDown.Enabled = true; - monitoredMagicAtkDown.Checked = true; monitoredMagicAtkDown.Enabled = true; - monitoredMaxHpDown.Checked = true; monitoredMaxHpDown.Enabled = true; - monitoredMaxMpDown.Checked = true; monitoredMaxMpDown.Enabled = true; - monitoredMaxTpDown.Checked = true; monitoredMaxTpDown.Enabled = true; - monitoredParalysis.Checked = true; monitoredParalysis.Enabled = true; - monitoredPetrification.Checked = true; monitoredPetrification.Enabled = true; - monitoredPlague.Checked = true; monitoredPlague.Enabled = true; - monitoredPoison.Checked = true; monitoredPoison.Enabled = true; - monitoredRasp.Checked = true; monitoredRasp.Enabled = true; - monitoredRequiem.Checked = true; monitoredRequiem.Enabled = true; - monitoredStrDown.Checked = true; monitoredStrDown.Enabled = true; - monitoredShock.Checked = true; monitoredShock.Enabled = true; - monitoredSilence.Checked = true; monitoredSilence.Enabled = true; - monitoredSleep.Checked = true; monitoredSleep.Enabled = true; - monitoredSleep2.Checked = true; monitoredSleep2.Enabled = true; - monitoredSlow.Checked = true; monitoredSlow.Enabled = true; - monitoredThrenody.Checked = true; monitoredThrenody.Enabled = true; - monitoredVitDown.Checked = true; monitoredVitDown.Enabled = true; - monitoredWeight.Checked = true; monitoredWeight.Enabled = true; + this.monitoredAgiDown.Checked = true; + this.monitoredAgiDown.Enabled = true; + this.monitoredAccuracyDown.Checked = true; + this.monitoredAccuracyDown.Enabled = true; + this.monitoredAddle.Checked = true; + this.monitoredAddle.Enabled = true; + this.monitoredAttackDown.Checked = true; + this.monitoredAttackDown.Enabled = true; + this.monitoredBane.Checked = true; + this.monitoredBane.Enabled = true; + this.monitoredBind.Checked = true; + this.monitoredBind.Enabled = true; + this.monitoredBio.Checked = true; + this.monitoredBio.Enabled = true; + this.monitoredBlindness.Checked = true; + this.monitoredBlindness.Enabled = true; + this.monitoredBurn.Checked = true; + this.monitoredBurn.Enabled = true; + this.monitoredChrDown.Checked = true; + this.monitoredChrDown.Enabled = true; + this.monitoredChoke.Checked = true; + this.monitoredChoke.Enabled = true; + this.monitoredCurse.Checked = true; + this.monitoredCurse.Enabled = true; + this.monitoredCurse2.Checked = true; + this.monitoredCurse2.Enabled = true; + this.monitoredDexDown.Checked = true; + this.monitoredDexDown.Enabled = true; + this.monitoredDefenseDown.Checked = true; + this.monitoredDefenseDown.Enabled = true; + this.monitoredDia.Checked = true; + this.monitoredDia.Enabled = true; + this.monitoredDisease.Checked = true; + this.monitoredDisease.Enabled = true; + this.monitoredDoom.Checked = true; + this.monitoredDoom.Enabled = true; + this.monitoredDrown.Checked = true; + this.monitoredDrown.Enabled = true; + this.monitoredElegy.Checked = true; + this.monitoredElegy.Enabled = true; + this.monitoredEvasionDown.Checked = true; + this.monitoredEvasionDown.Enabled = true; + this.monitoredFlash.Checked = true; + this.monitoredFlash.Enabled = true; + this.monitoredFrost.Checked = true; + this.monitoredFrost.Enabled = true; + this.monitoredHelix.Checked = true; + this.monitoredHelix.Enabled = true; + this.monitoredIntDown.Checked = true; + this.monitoredIntDown.Enabled = true; + this.monitoredMndDown.Checked = true; + this.monitoredMndDown.Enabled = true; + this.monitoredMagicAccDown.Checked = true; + this.monitoredMagicAccDown.Enabled = true; + this.monitoredMagicAtkDown.Checked = true; + this.monitoredMagicAtkDown.Enabled = true; + this.monitoredMaxHpDown.Checked = true; + this.monitoredMaxHpDown.Enabled = true; + this.monitoredMaxMpDown.Checked = true; + this.monitoredMaxMpDown.Enabled = true; + this.monitoredMaxTpDown.Checked = true; + this.monitoredMaxTpDown.Enabled = true; + this.monitoredParalysis.Checked = true; + this.monitoredParalysis.Enabled = true; + this.monitoredPetrification.Checked = true; + this.monitoredPetrification.Enabled = true; + this.monitoredPlague.Checked = true; + this.monitoredPlague.Enabled = true; + this.monitoredPoison.Checked = true; + this.monitoredPoison.Enabled = true; + this.monitoredRasp.Checked = true; + this.monitoredRasp.Enabled = true; + this.monitoredRequiem.Checked = true; + this.monitoredRequiem.Enabled = true; + this.monitoredStrDown.Checked = true; + this.monitoredStrDown.Enabled = true; + this.monitoredShock.Checked = true; + this.monitoredShock.Enabled = true; + this.monitoredSilence.Checked = true; + this.monitoredSilence.Enabled = true; + this.monitoredSleep.Checked = true; + this.monitoredSleep.Enabled = true; + this.monitoredSleep2.Checked = true; + this.monitoredSleep2.Enabled = true; + this.monitoredSlow.Checked = true; + this.monitoredSlow.Enabled = true; + this.monitoredThrenody.Checked = true; + this.monitoredThrenody.Enabled = true; + this.monitoredVitDown.Checked = true; + this.monitoredVitDown.Enabled = true; + this.monitoredWeight.Checked = true; + this.monitoredWeight.Enabled = true; } - else if (monitoredDebuffEnabled.Checked == false) + else if (this.monitoredDebuffEnabled.Checked == false) { - monitoredAgiDown.Checked = false; monitoredAgiDown.Enabled = false; - monitoredAccuracyDown.Checked = false; monitoredAccuracyDown.Enabled = false; - monitoredAddle.Checked = false; monitoredAddle.Enabled = false; - monitoredAttackDown.Checked = false; monitoredAttackDown.Enabled = false; - monitoredBane.Checked = false; monitoredBane.Enabled = false; - monitoredBind.Checked = false; monitoredBind.Enabled = false; - monitoredBio.Checked = false; monitoredBio.Enabled = false; - monitoredBlindness.Checked = false; monitoredBlindness.Enabled = false; - monitoredBurn.Checked = false; monitoredBurn.Enabled = false; - monitoredChrDown.Checked = false; monitoredChrDown.Enabled = false; - monitoredChoke.Checked = false; monitoredChoke.Enabled = false; - monitoredCurse.Checked = false; monitoredCurse.Enabled = false; - monitoredCurse2.Checked = false; monitoredCurse2.Enabled = false; - monitoredDexDown.Checked = false; monitoredDexDown.Enabled = false; - monitoredDefenseDown.Checked = false; monitoredDefenseDown.Enabled = false; - monitoredDia.Checked = false; monitoredDia.Enabled = false; - monitoredDisease.Checked = false; monitoredDisease.Enabled = false; - monitoredDoom.Checked = false; monitoredDoom.Enabled = false; - monitoredDrown.Checked = false; monitoredDrown.Enabled = false; - monitoredElegy.Checked = false; monitoredElegy.Enabled = false; - monitoredEvasionDown.Checked = false; monitoredEvasionDown.Enabled = false; - monitoredFlash.Checked = false; monitoredFlash.Enabled = false; - monitoredFrost.Checked = false; monitoredFrost.Enabled = false; - monitoredHelix.Checked = false; monitoredHelix.Enabled = false; - monitoredIntDown.Checked = false; monitoredIntDown.Enabled = false; - monitoredMndDown.Checked = false; monitoredMndDown.Enabled = false; - monitoredMagicAccDown.Checked = false; monitoredMagicAccDown.Enabled = false; - monitoredMagicAtkDown.Checked = false; monitoredMagicAtkDown.Enabled = false; - monitoredMaxHpDown.Checked = false; monitoredMaxHpDown.Enabled = false; - monitoredMaxMpDown.Checked = false; monitoredMaxMpDown.Enabled = false; - monitoredMaxTpDown.Checked = false; monitoredMaxTpDown.Enabled = false; - monitoredParalysis.Checked = false; monitoredParalysis.Enabled = false; - monitoredPetrification.Checked = false; monitoredPetrification.Enabled = false; - monitoredPlague.Checked = false; monitoredPlague.Enabled = false; - monitoredPoison.Checked = false; monitoredPoison.Enabled = false; - monitoredRasp.Checked = false; monitoredRasp.Enabled = false; - monitoredRequiem.Checked = false; monitoredRequiem.Enabled = false; - monitoredStrDown.Checked = false; monitoredStrDown.Enabled = false; - monitoredShock.Checked = false; monitoredShock.Enabled = false; - monitoredSilence.Checked = false; monitoredSilence.Enabled = false; - monitoredSleep.Checked = false; monitoredSleep.Enabled = false; - monitoredSleep2.Checked = false; monitoredSleep2.Enabled = false; - monitoredSlow.Checked = false; monitoredSlow.Enabled = false; - monitoredThrenody.Checked = false; monitoredThrenody.Enabled = false; - monitoredVitDown.Checked = false; monitoredVitDown.Enabled = false; - monitoredWeight.Checked = false; monitoredWeight.Enabled = false; + this.monitoredAgiDown.Checked = false; + this.monitoredAgiDown.Enabled = false; + this.monitoredAccuracyDown.Checked = false; + this.monitoredAccuracyDown.Enabled = false; + this.monitoredAddle.Checked = false; + this.monitoredAddle.Enabled = false; + this.monitoredAttackDown.Checked = false; + this.monitoredAttackDown.Enabled = false; + this.monitoredBane.Checked = false; + this.monitoredBane.Enabled = false; + this.monitoredBind.Checked = false; + this.monitoredBind.Enabled = false; + this.monitoredBio.Checked = false; + this.monitoredBio.Enabled = false; + this.monitoredBlindness.Checked = false; + this.monitoredBlindness.Enabled = false; + this.monitoredBurn.Checked = false; + this.monitoredBurn.Enabled = false; + this.monitoredChrDown.Checked = false; + this.monitoredChrDown.Enabled = false; + this.monitoredChoke.Checked = false; + this.monitoredChoke.Enabled = false; + this.monitoredCurse.Checked = false; + this.monitoredCurse.Enabled = false; + this.monitoredCurse2.Checked = false; + this.monitoredCurse2.Enabled = false; + this.monitoredDexDown.Checked = false; + this.monitoredDexDown.Enabled = false; + this.monitoredDefenseDown.Checked = false; + this.monitoredDefenseDown.Enabled = false; + this.monitoredDia.Checked = false; + this.monitoredDia.Enabled = false; + this.monitoredDisease.Checked = false; + this.monitoredDisease.Enabled = false; + this.monitoredDoom.Checked = false; + this.monitoredDoom.Enabled = false; + this.monitoredDrown.Checked = false; + this.monitoredDrown.Enabled = false; + this.monitoredElegy.Checked = false; + this.monitoredElegy.Enabled = false; + this.monitoredEvasionDown.Checked = false; + this.monitoredEvasionDown.Enabled = false; + this.monitoredFlash.Checked = false; + this.monitoredFlash.Enabled = false; + this.monitoredFrost.Checked = false; + this.monitoredFrost.Enabled = false; + this.monitoredHelix.Checked = false; + this.monitoredHelix.Enabled = false; + this.monitoredIntDown.Checked = false; + this.monitoredIntDown.Enabled = false; + this.monitoredMndDown.Checked = false; + this.monitoredMndDown.Enabled = false; + this.monitoredMagicAccDown.Checked = false; + this.monitoredMagicAccDown.Enabled = false; + this.monitoredMagicAtkDown.Checked = false; + this.monitoredMagicAtkDown.Enabled = false; + this.monitoredMaxHpDown.Checked = false; + this.monitoredMaxHpDown.Enabled = false; + this.monitoredMaxMpDown.Checked = false; + this.monitoredMaxMpDown.Enabled = false; + this.monitoredMaxTpDown.Checked = false; + this.monitoredMaxTpDown.Enabled = false; + this.monitoredParalysis.Checked = false; + this.monitoredParalysis.Enabled = false; + this.monitoredPetrification.Checked = false; + this.monitoredPetrification.Enabled = false; + this.monitoredPlague.Checked = false; + this.monitoredPlague.Enabled = false; + this.monitoredPoison.Checked = false; + this.monitoredPoison.Enabled = false; + this.monitoredRasp.Checked = false; + this.monitoredRasp.Enabled = false; + this.monitoredRequiem.Checked = false; + this.monitoredRequiem.Enabled = false; + this.monitoredStrDown.Checked = false; + this.monitoredStrDown.Enabled = false; + this.monitoredShock.Checked = false; + this.monitoredShock.Enabled = false; + this.monitoredSilence.Checked = false; + this.monitoredSilence.Enabled = false; + this.monitoredSleep.Checked = false; + this.monitoredSleep.Enabled = false; + this.monitoredSleep2.Checked = false; + this.monitoredSleep2.Enabled = false; + this.monitoredSlow.Checked = false; + this.monitoredSlow.Enabled = false; + this.monitoredThrenody.Checked = false; + this.monitoredThrenody.Enabled = false; + this.monitoredVitDown.Checked = false; + this.monitoredVitDown.Enabled = false; + this.monitoredWeight.Checked = false; + this.monitoredWeight.Enabled = false; } } #endregion @@ -596,183 +774,183 @@ private void monitoredDebuffEnabled_CheckedChanged(object sender, EventArgs e) #region "== Form Closing Settings" private void Form2_FormClosing(object sender, FormClosingEventArgs e) { - Properties.Settings.Default.cure1enabled = cure1enabled.Checked; - Properties.Settings.Default.cure2enabled = cure2enabled.Checked; - Properties.Settings.Default.cure3enabled = cure3enabled.Checked; - Properties.Settings.Default.cure4enabled = cure4enabled.Checked; - Properties.Settings.Default.cure5enabled = cure5enabled.Checked; - Properties.Settings.Default.cure6enabled = cure6enabled.Checked; - Properties.Settings.Default.cure1amount = Convert.ToInt32(cure1amount.Value); - Properties.Settings.Default.cure2amount = Convert.ToInt32(cure2amount.Value); - Properties.Settings.Default.cure3amount = Convert.ToInt32(cure3amount.Value); - Properties.Settings.Default.cure4amount = Convert.ToInt32(cure4amount.Value); - Properties.Settings.Default.cure5amount = Convert.ToInt32(cure5amount.Value); - Properties.Settings.Default.cure6amount = Convert.ToInt32(cure6amount.Value); - Properties.Settings.Default.curePercentage = curePercentage.Value; - Properties.Settings.Default.priorityCurePercentage = priorityCurePercentage.Value; - Properties.Settings.Default.afflatusSolice = afflatusSolace.Checked; - Properties.Settings.Default.afflatusMisery = afflatusMisery.Checked; - Properties.Settings.Default.lightArts = lightArts.Checked; - Properties.Settings.Default.Composure = composure.Checked; - Properties.Settings.Default.Convert = convert.Checked; - Properties.Settings.Default.divineSealBox = divineSealBox.Checked; - Properties.Settings.Default.addWhite = addWhite.Checked; - Properties.Settings.Default.sublimation = sublimation.Checked; - Properties.Settings.Default.autoHasteMinutes = autoHasteMinutes.Value; - Properties.Settings.Default.autoProtect_IVMinutes = autoProtect_IVMinutes.Value; - Properties.Settings.Default.autoProtect_VMinutes = autoProtect_VMinutes.Value; - Properties.Settings.Default.autoShell_IVMinutes = autoShell_IVMinutes.Value; - Properties.Settings.Default.autoShell_VMinutes = autoShell_VMinutes.Value; - Properties.Settings.Default.autoPhalanxIIMinutes = autoPhalanxIIMinutes.Value; - Properties.Settings.Default.autoRegenIVMinutes = autoRegenIVMinutes.Value; - Properties.Settings.Default.autoRegenVMinutes = autoRegenVMinutes.Value; - Properties.Settings.Default.autoRefreshMinutes = autoRefreshMinutes.Value; - Properties.Settings.Default.autoRefreshIIMinutes = autoRefreshIIMinutes.Value; - Properties.Settings.Default.plSilenceItemEnabled = plSilenceItemEnabled.Checked; - Properties.Settings.Default.plSilenceItemIndex = plSilenceItem.SelectedIndex; - Properties.Settings.Default.wakeSleepEnabled = wakeSleepEnabled.Checked; - Properties.Settings.Default.wakeSleepSpellIndex = wakeSleepSpell.SelectedIndex; - Properties.Settings.Default.wakeSleepSpellString = wakeSleepSpell.Items[wakeSleepSpell.SelectedIndex].ToString(); - Properties.Settings.Default.plDebuffEnabled = plDebuffEnabled.Checked; - Properties.Settings.Default.monitoredDebuffEnabled = monitoredDebuffEnabled.Checked; - Properties.Settings.Default.plSilenceItemString = plSilenceItem.Items[plSilenceItem.SelectedIndex].ToString(); - Properties.Settings.Default.plBlink = plBlink.Checked; - Properties.Settings.Default.plReraise = plReraise.Checked; - if (plReraiseLevel1.Checked) + Properties.Settings.Default.cure1enabled = this.cure1enabled.Checked; + Properties.Settings.Default.cure2enabled = this.cure2enabled.Checked; + Properties.Settings.Default.cure3enabled = this.cure3enabled.Checked; + Properties.Settings.Default.cure4enabled = this.cure4enabled.Checked; + Properties.Settings.Default.cure5enabled = this.cure5enabled.Checked; + Properties.Settings.Default.cure6enabled = this.cure6enabled.Checked; + Properties.Settings.Default.cure1amount = Convert.ToInt32(this.cure1amount.Value); + Properties.Settings.Default.cure2amount = Convert.ToInt32(this.cure2amount.Value); + Properties.Settings.Default.cure3amount = Convert.ToInt32(this.cure3amount.Value); + Properties.Settings.Default.cure4amount = Convert.ToInt32(this.cure4amount.Value); + Properties.Settings.Default.cure5amount = Convert.ToInt32(this.cure5amount.Value); + Properties.Settings.Default.cure6amount = Convert.ToInt32(this.cure6amount.Value); + Properties.Settings.Default.curePercentage = this.curePercentage.Value; + Properties.Settings.Default.priorityCurePercentage = this.priorityCurePercentage.Value; + Properties.Settings.Default.afflatusSolice = this.afflatusSolace.Checked; + Properties.Settings.Default.afflatusMisery = this.afflatusMisery.Checked; + Properties.Settings.Default.lightArts = this.lightArts.Checked; + Properties.Settings.Default.Composure = this.composure.Checked; + Properties.Settings.Default.Convert = this.convert.Checked; + Properties.Settings.Default.divineSealBox = this.divineSealBox.Checked; + Properties.Settings.Default.addWhite = this.addWhite.Checked; + Properties.Settings.Default.sublimation = this.sublimation.Checked; + Properties.Settings.Default.autoHasteMinutes = this.autoHasteMinutes.Value; + Properties.Settings.Default.autoProtect_IVMinutes = this.autoProtect_IVMinutes.Value; + Properties.Settings.Default.autoProtect_VMinutes = this.autoProtect_VMinutes.Value; + Properties.Settings.Default.autoShell_IVMinutes = this.autoShell_IVMinutes.Value; + Properties.Settings.Default.autoShell_VMinutes = this.autoShell_VMinutes.Value; + Properties.Settings.Default.autoPhalanxIIMinutes = this.autoPhalanxIIMinutes.Value; + Properties.Settings.Default.autoRegenIVMinutes = this.autoRegenIVMinutes.Value; + Properties.Settings.Default.autoRegenVMinutes = this.autoRegenVMinutes.Value; + Properties.Settings.Default.autoRefreshMinutes = this.autoRefreshMinutes.Value; + Properties.Settings.Default.autoRefreshIIMinutes = this.autoRefreshIIMinutes.Value; + Properties.Settings.Default.plSilenceItemEnabled = this.plSilenceItemEnabled.Checked; + Properties.Settings.Default.plSilenceItemIndex = this.plSilenceItem.SelectedIndex; + Properties.Settings.Default.wakeSleepEnabled = this.wakeSleepEnabled.Checked; + Properties.Settings.Default.wakeSleepSpellIndex = this.wakeSleepSpell.SelectedIndex; + Properties.Settings.Default.wakeSleepSpellString = this.wakeSleepSpell.Items[this.wakeSleepSpell.SelectedIndex].ToString(); + Properties.Settings.Default.plDebuffEnabled = this.plDebuffEnabled.Checked; + Properties.Settings.Default.monitoredDebuffEnabled = this.monitoredDebuffEnabled.Checked; + Properties.Settings.Default.plSilenceItemString = this.plSilenceItem.Items[this.plSilenceItem.SelectedIndex].ToString(); + Properties.Settings.Default.plBlink = this.plBlink.Checked; + Properties.Settings.Default.plReraise = this.plReraise.Checked; + if (this.plReraiseLevel1.Checked) { Properties.Settings.Default.plReraiseLevel = 1; } - else if (plReraiseLevel2.Checked) + else if (this.plReraiseLevel2.Checked) { Properties.Settings.Default.plReraiseLevel = 2; } - else if (plReraiseLevel3.Checked) + else if (this.plReraiseLevel3.Checked) { Properties.Settings.Default.plReraiseLevel = 3; } - Properties.Settings.Default.plRefresh = plRefresh.Checked; - if (plRefreshLevel1.Checked) + Properties.Settings.Default.plRefresh = this.plRefresh.Checked; + if (this.plRefreshLevel1.Checked) { Properties.Settings.Default.plRefreshLevel = 1; } - else if (plRefreshLevel2.Checked) + else if (this.plRefreshLevel2.Checked) { Properties.Settings.Default.plRefreshLevel = 2; } - Properties.Settings.Default.plStoneskin = plStoneskin.Checked; - Properties.Settings.Default.plShellra = plShellra.Checked; - Properties.Settings.Default.plProtectra = plProtectra.Checked; - Properties.Settings.Default.plProtectralevel = plProtectralevel.Value; - Properties.Settings.Default.plShellralevel = plShellralevel.Value; + Properties.Settings.Default.plStoneskin = this.plStoneskin.Checked; + Properties.Settings.Default.plShellra = this.plShellra.Checked; + Properties.Settings.Default.plProtectra = this.plProtectra.Checked; + Properties.Settings.Default.plProtectralevel = this.plProtectralevel.Value; + Properties.Settings.Default.plShellralevel = this.plShellralevel.Value; - Properties.Settings.Default.plAgiDown = plAgiDown.Checked; - Properties.Settings.Default.plAccuracyDown = plAccuracyDown.Checked; - Properties.Settings.Default.plAddle = plAddle.Checked; - Properties.Settings.Default.plAttackDown = plAttackDown.Checked; - Properties.Settings.Default.plBane = plBane.Checked; - Properties.Settings.Default.plBind = plBind.Checked; - Properties.Settings.Default.plBio = plBio.Checked; - Properties.Settings.Default.plBlindness = plBlindness.Checked; - Properties.Settings.Default.plBurn = plBurn.Checked; - Properties.Settings.Default.plChrDown = plChrDown.Checked; - Properties.Settings.Default.plChoke = plChoke.Checked; - Properties.Settings.Default.plCurse = plCurse.Checked; - Properties.Settings.Default.plCurse2 = plCurse2.Checked; - Properties.Settings.Default.plDexDown = plDexDown.Checked; - Properties.Settings.Default.plDefenseDown = plDefenseDown.Checked; - Properties.Settings.Default.plDia = plDia.Checked; - Properties.Settings.Default.plDisease = plDisease.Checked; - Properties.Settings.Default.plDoom = plDoom.Checked; - Properties.Settings.Default.plDrown = plDrown.Checked; - Properties.Settings.Default.plElegy = plElegy.Checked; - Properties.Settings.Default.plEvasionDown = plEvasionDown.Checked; - Properties.Settings.Default.plFlash = plFlash.Checked; - Properties.Settings.Default.plFrost = plFrost.Checked; - Properties.Settings.Default.plHelix = plHelix.Checked; - Properties.Settings.Default.plIntDown = plIntDown.Checked; - Properties.Settings.Default.plMndDown = plMndDown.Checked; - Properties.Settings.Default.plMagicAccDown = plMagicAccDown.Checked; - Properties.Settings.Default.plMagicAtkDown = plMagicAtkDown.Checked; - Properties.Settings.Default.plMaxHpDown = plMaxHpDown.Checked; - Properties.Settings.Default.plMaxMpDown = plMaxMpDown.Checked; - Properties.Settings.Default.plMaxTpDown = plMaxTpDown.Checked; - Properties.Settings.Default.plParalysis = plParalysis.Checked; - Properties.Settings.Default.plPlague = plPlague.Checked; - Properties.Settings.Default.plPoison = plPoison.Checked; - Properties.Settings.Default.plRasp = plRasp.Checked; - Properties.Settings.Default.plRequiem = plRequiem.Checked; - Properties.Settings.Default.plStrDown = plStrDown.Checked; - Properties.Settings.Default.plShock = plShock.Checked; - Properties.Settings.Default.plSilence = plSilence.Checked; - Properties.Settings.Default.plSlow = plSlow.Checked; - Properties.Settings.Default.plThrenody = plThrenody.Checked; - Properties.Settings.Default.plVitDown = plVitDown.Checked; - Properties.Settings.Default.plWeight = plWeight.Checked; + Properties.Settings.Default.plAgiDown = this.plAgiDown.Checked; + Properties.Settings.Default.plAccuracyDown = this.plAccuracyDown.Checked; + Properties.Settings.Default.plAddle = this.plAddle.Checked; + Properties.Settings.Default.plAttackDown = this.plAttackDown.Checked; + Properties.Settings.Default.plBane = this.plBane.Checked; + Properties.Settings.Default.plBind = this.plBind.Checked; + Properties.Settings.Default.plBio = this.plBio.Checked; + Properties.Settings.Default.plBlindness = this.plBlindness.Checked; + Properties.Settings.Default.plBurn = this.plBurn.Checked; + Properties.Settings.Default.plChrDown = this.plChrDown.Checked; + Properties.Settings.Default.plChoke = this.plChoke.Checked; + Properties.Settings.Default.plCurse = this.plCurse.Checked; + Properties.Settings.Default.plCurse2 = this.plCurse2.Checked; + Properties.Settings.Default.plDexDown = this.plDexDown.Checked; + Properties.Settings.Default.plDefenseDown = this.plDefenseDown.Checked; + Properties.Settings.Default.plDia = this.plDia.Checked; + Properties.Settings.Default.plDisease = this.plDisease.Checked; + Properties.Settings.Default.plDoom = this.plDoom.Checked; + Properties.Settings.Default.plDrown = this.plDrown.Checked; + Properties.Settings.Default.plElegy = this.plElegy.Checked; + Properties.Settings.Default.plEvasionDown = this.plEvasionDown.Checked; + Properties.Settings.Default.plFlash = this.plFlash.Checked; + Properties.Settings.Default.plFrost = this.plFrost.Checked; + Properties.Settings.Default.plHelix = this.plHelix.Checked; + Properties.Settings.Default.plIntDown = this.plIntDown.Checked; + Properties.Settings.Default.plMndDown = this.plMndDown.Checked; + Properties.Settings.Default.plMagicAccDown = this.plMagicAccDown.Checked; + Properties.Settings.Default.plMagicAtkDown = this.plMagicAtkDown.Checked; + Properties.Settings.Default.plMaxHpDown = this.plMaxHpDown.Checked; + Properties.Settings.Default.plMaxMpDown = this.plMaxMpDown.Checked; + Properties.Settings.Default.plMaxTpDown = this.plMaxTpDown.Checked; + Properties.Settings.Default.plParalysis = this.plParalysis.Checked; + Properties.Settings.Default.plPlague = this.plPlague.Checked; + Properties.Settings.Default.plPoison = this.plPoison.Checked; + Properties.Settings.Default.plRasp = this.plRasp.Checked; + Properties.Settings.Default.plRequiem = this.plRequiem.Checked; + Properties.Settings.Default.plStrDown = this.plStrDown.Checked; + Properties.Settings.Default.plShock = this.plShock.Checked; + Properties.Settings.Default.plSilence = this.plSilence.Checked; + Properties.Settings.Default.plSlow = this.plSlow.Checked; + Properties.Settings.Default.plThrenody = this.plThrenody.Checked; + Properties.Settings.Default.plVitDown = this.plVitDown.Checked; + Properties.Settings.Default.plWeight = this.plWeight.Checked; // New UI Elements - Properties.Settings.Default.plDoomEnabled = plDoomEnabled.Checked; - Properties.Settings.Default.plDoomindex = plDoomitem.SelectedIndex; - Properties.Settings.Default.PLDoomitem = plDoomitem.Items[Properties.Settings.Default.plDoomindex].ToString(); - Properties.Settings.Default.lowMPcheckBox = lowMPcheckBox.Checked; - Properties.Settings.Default.mpMinCastValue = mpMinCastValue.Value; - Properties.Settings.Default.naSpellsenable = naSpellsenable.Checked; - Properties.Settings.Default.naBlindness = naBlindness.Checked; - Properties.Settings.Default.naCurse = naCurse.Checked; - Properties.Settings.Default.naDisease = naDisease.Checked; - Properties.Settings.Default.naParalysis = naParalysis.Checked; - Properties.Settings.Default.naPetrification = naPetrification.Checked; - Properties.Settings.Default.naPlague = naPlague.Checked; - Properties.Settings.Default.naPoison = naPoison.Checked; - Properties.Settings.Default.naSilence = naSilence.Checked; - Properties.Settings.Default.lowMPuseitem = lowMPuseitem.Checked; - Properties.Settings.Default.mpMintempitemusage = mpMintempitemusage.Value; + Properties.Settings.Default.plDoomEnabled = this.plDoomEnabled.Checked; + Properties.Settings.Default.plDoomindex = this.plDoomitem.SelectedIndex; + Properties.Settings.Default.PLDoomitem = this.plDoomitem.Items[Properties.Settings.Default.plDoomindex].ToString(); + Properties.Settings.Default.lowMPcheckBox = this.lowMPcheckBox.Checked; + Properties.Settings.Default.mpMinCastValue = this.mpMinCastValue.Value; + Properties.Settings.Default.naSpellsenable = this.naSpellsenable.Checked; + Properties.Settings.Default.naBlindness = this.naBlindness.Checked; + Properties.Settings.Default.naCurse = this.naCurse.Checked; + Properties.Settings.Default.naDisease = this.naDisease.Checked; + Properties.Settings.Default.naParalysis = this.naParalysis.Checked; + Properties.Settings.Default.naPetrification = this.naPetrification.Checked; + Properties.Settings.Default.naPlague = this.naPlague.Checked; + Properties.Settings.Default.naPoison = this.naPoison.Checked; + Properties.Settings.Default.naSilence = this.naSilence.Checked; + Properties.Settings.Default.lowMPuseitem = this.lowMPuseitem.Checked; + Properties.Settings.Default.mpMintempitemusage = this.mpMintempitemusage.Value; - Properties.Settings.Default.monitoredAgiDown = monitoredAgiDown.Checked; - Properties.Settings.Default.monitoredAccuracyDown = monitoredAccuracyDown.Checked; - Properties.Settings.Default.monitoredAddle = monitoredAddle.Checked; - Properties.Settings.Default.monitoredAttackDown = monitoredAttackDown.Checked; - Properties.Settings.Default.monitoredBane = monitoredBane.Checked; - Properties.Settings.Default.monitoredBind = monitoredBind.Checked; - Properties.Settings.Default.monitoredBio = monitoredBio.Checked; - Properties.Settings.Default.monitoredBlindness = monitoredBlindness.Checked; - Properties.Settings.Default.monitoredBurn = monitoredBurn.Checked; - Properties.Settings.Default.monitoredChrDown = monitoredChrDown.Checked; - Properties.Settings.Default.monitoredChoke = monitoredChoke.Checked; - Properties.Settings.Default.monitoredCurse = monitoredCurse.Checked; - Properties.Settings.Default.monitoredCurse2 = monitoredCurse2.Checked; - Properties.Settings.Default.monitoredDexDown = monitoredDexDown.Checked; - Properties.Settings.Default.monitoredDefenseDown = monitoredDefenseDown.Checked; - Properties.Settings.Default.monitoredDia = monitoredDia.Checked; - Properties.Settings.Default.monitoredDisease = monitoredDisease.Checked; - Properties.Settings.Default.monitoredDoom = monitoredDoom.Checked; - Properties.Settings.Default.monitoredDrown = monitoredDrown.Checked; - Properties.Settings.Default.monitoredElegy = monitoredElegy.Checked; - Properties.Settings.Default.monitoredEvasionDown = monitoredEvasionDown.Checked; - Properties.Settings.Default.monitoredFlash = monitoredFlash.Checked; - Properties.Settings.Default.monitoredFrost = monitoredFrost.Checked; - Properties.Settings.Default.monitoredHelix = monitoredHelix.Checked; - Properties.Settings.Default.monitoredIntDown = monitoredIntDown.Checked; - Properties.Settings.Default.monitoredMndDown = monitoredMndDown.Checked; - Properties.Settings.Default.monitoredMagicAccDown = monitoredMagicAccDown.Checked; - Properties.Settings.Default.monitoredMagicAtkDown = monitoredMagicAtkDown.Checked; - Properties.Settings.Default.monitoredMaxHpDown = monitoredMaxHpDown.Checked; - Properties.Settings.Default.monitoredMaxMpDown = monitoredMaxMpDown.Checked; - Properties.Settings.Default.monitoredMaxTpDown = monitoredMaxTpDown.Checked; - Properties.Settings.Default.monitoredParalysis = monitoredParalysis.Checked; - Properties.Settings.Default.monitoredPetrification = monitoredPetrification.Checked; - Properties.Settings.Default.monitoredPlague = monitoredPlague.Checked; - Properties.Settings.Default.monitoredPoison = monitoredPoison.Checked; - Properties.Settings.Default.monitoredRasp = monitoredRasp.Checked; - Properties.Settings.Default.monitoredRequiem = monitoredRequiem.Checked; - Properties.Settings.Default.monitoredStrDown = monitoredStrDown.Checked; - Properties.Settings.Default.monitoredShock = monitoredShock.Checked; - Properties.Settings.Default.monitoredSilence = monitoredSilence.Checked; - Properties.Settings.Default.monitoredSleep = monitoredSleep.Checked; - Properties.Settings.Default.monitoredSleep2 = monitoredSleep2.Checked; - Properties.Settings.Default.monitoredSlow = monitoredSlow.Checked; - Properties.Settings.Default.monitoredThrenody = monitoredThrenody.Checked; - Properties.Settings.Default.monitoredVitDown = monitoredVitDown.Checked; - Properties.Settings.Default.monitoredWeight = monitoredWeight.Checked; - Properties.Settings.Default.AutoCastEngageCheckBox = AutoCastEngageCheckBox.Checked; + Properties.Settings.Default.monitoredAgiDown = this.monitoredAgiDown.Checked; + Properties.Settings.Default.monitoredAccuracyDown = this.monitoredAccuracyDown.Checked; + Properties.Settings.Default.monitoredAddle = this.monitoredAddle.Checked; + Properties.Settings.Default.monitoredAttackDown = this.monitoredAttackDown.Checked; + Properties.Settings.Default.monitoredBane = this.monitoredBane.Checked; + Properties.Settings.Default.monitoredBind = this.monitoredBind.Checked; + Properties.Settings.Default.monitoredBio = this.monitoredBio.Checked; + Properties.Settings.Default.monitoredBlindness = this.monitoredBlindness.Checked; + Properties.Settings.Default.monitoredBurn = this.monitoredBurn.Checked; + Properties.Settings.Default.monitoredChrDown = this.monitoredChrDown.Checked; + Properties.Settings.Default.monitoredChoke = this.monitoredChoke.Checked; + Properties.Settings.Default.monitoredCurse = this.monitoredCurse.Checked; + Properties.Settings.Default.monitoredCurse2 = this.monitoredCurse2.Checked; + Properties.Settings.Default.monitoredDexDown = this.monitoredDexDown.Checked; + Properties.Settings.Default.monitoredDefenseDown = this.monitoredDefenseDown.Checked; + Properties.Settings.Default.monitoredDia = this.monitoredDia.Checked; + Properties.Settings.Default.monitoredDisease = this.monitoredDisease.Checked; + Properties.Settings.Default.monitoredDoom = this.monitoredDoom.Checked; + Properties.Settings.Default.monitoredDrown = this.monitoredDrown.Checked; + Properties.Settings.Default.monitoredElegy = this.monitoredElegy.Checked; + Properties.Settings.Default.monitoredEvasionDown = this.monitoredEvasionDown.Checked; + Properties.Settings.Default.monitoredFlash = this.monitoredFlash.Checked; + Properties.Settings.Default.monitoredFrost = this.monitoredFrost.Checked; + Properties.Settings.Default.monitoredHelix = this.monitoredHelix.Checked; + Properties.Settings.Default.monitoredIntDown = this.monitoredIntDown.Checked; + Properties.Settings.Default.monitoredMndDown = this.monitoredMndDown.Checked; + Properties.Settings.Default.monitoredMagicAccDown = this.monitoredMagicAccDown.Checked; + Properties.Settings.Default.monitoredMagicAtkDown = this.monitoredMagicAtkDown.Checked; + Properties.Settings.Default.monitoredMaxHpDown = this.monitoredMaxHpDown.Checked; + Properties.Settings.Default.monitoredMaxMpDown = this.monitoredMaxMpDown.Checked; + Properties.Settings.Default.monitoredMaxTpDown = this.monitoredMaxTpDown.Checked; + Properties.Settings.Default.monitoredParalysis = this.monitoredParalysis.Checked; + Properties.Settings.Default.monitoredPetrification = this.monitoredPetrification.Checked; + Properties.Settings.Default.monitoredPlague = this.monitoredPlague.Checked; + Properties.Settings.Default.monitoredPoison = this.monitoredPoison.Checked; + Properties.Settings.Default.monitoredRasp = this.monitoredRasp.Checked; + Properties.Settings.Default.monitoredRequiem = this.monitoredRequiem.Checked; + Properties.Settings.Default.monitoredStrDown = this.monitoredStrDown.Checked; + Properties.Settings.Default.monitoredShock = this.monitoredShock.Checked; + Properties.Settings.Default.monitoredSilence = this.monitoredSilence.Checked; + Properties.Settings.Default.monitoredSleep = this.monitoredSleep.Checked; + Properties.Settings.Default.monitoredSleep2 = this.monitoredSleep2.Checked; + Properties.Settings.Default.monitoredSlow = this.monitoredSlow.Checked; + Properties.Settings.Default.monitoredThrenody = this.monitoredThrenody.Checked; + Properties.Settings.Default.monitoredVitDown = this.monitoredVitDown.Checked; + Properties.Settings.Default.monitoredWeight = this.monitoredWeight.Checked; + Properties.Settings.Default.AutoCastEngageCheckBox = this.AutoCastEngageCheckBox.Checked; Properties.Settings.Default.Save(); } diff --git a/Form3.Designer.cs b/Form3.Designer.cs index 70dba89..b53184b 100644 --- a/Form3.Designer.cs +++ b/Form3.Designer.cs @@ -33,7 +33,6 @@ private void InitializeComponent() this.label2 = new System.Windows.Forms.Label(); this.label3 = new System.Windows.Forms.Label(); this.label4 = new System.Windows.Forms.Label(); - this.label5 = new System.Windows.Forms.Label(); this.label6 = new System.Windows.Forms.Label(); this.label7 = new System.Windows.Forms.Label(); this.label8 = new System.Windows.Forms.Label(); @@ -44,6 +43,8 @@ private void InitializeComponent() this.label13 = new System.Windows.Forms.Label(); this.linkLabel2 = new System.Windows.Forms.LinkLabel(); this.linkLabel3 = new System.Windows.Forms.LinkLabel(); + this.label5 = new System.Windows.Forms.Label(); + this.label14 = new System.Windows.Forms.Label(); this.SuspendLayout(); // // linkLabel1 @@ -51,10 +52,10 @@ private void InitializeComponent() this.linkLabel1.AutoSize = true; this.linkLabel1.Location = new System.Drawing.Point(13, 174); this.linkLabel1.Name = "linkLabel1"; - this.linkLabel1.Size = new System.Drawing.Size(227, 13); + this.linkLabel1.Size = new System.Drawing.Size(196, 13); this.linkLabel1.TabIndex = 0; this.linkLabel1.TabStop = true; - this.linkLabel1.Text = "http://www.ffevo.net/topic/2960-cure-please/"; + this.linkLabel1.Text = "https://github.com/atom0s/Cure-Please"; this.linkLabel1.LinkClicked += new System.Windows.Forms.LinkLabelLinkClickedEventHandler(this.linkLabel1_LinkClicked); // // label1 @@ -77,12 +78,12 @@ private void InitializeComponent() this.label2.Name = "label2"; this.label2.Size = new System.Drawing.Size(78, 13); this.label2.TabIndex = 2; - this.label2.Text = "Version 1.0.2.1"; + this.label2.Text = "Version 0.0.0.0"; // // label3 // this.label3.AutoSize = true; - this.label3.Location = new System.Drawing.Point(12, 80); + this.label3.Location = new System.Drawing.Point(42, 80); this.label3.Name = "label3"; this.label3.Size = new System.Drawing.Size(79, 13); this.label3.TabIndex = 3; @@ -91,26 +92,17 @@ private void InitializeComponent() // label4 // this.label4.AutoSize = true; - this.label4.Location = new System.Drawing.Point(12, 125); + this.label4.Location = new System.Drawing.Point(13, 101); this.label4.Name = "label4"; this.label4.Size = new System.Drawing.Size(108, 13); this.label4.TabIndex = 4; this.label4.Text = "Code Contribution by:"; // - // label5 - // - this.label5.AutoSize = true; - this.label5.Location = new System.Drawing.Point(12, 102); - this.label5.Name = "label5"; - this.label5.Size = new System.Drawing.Size(76, 13); - this.label5.TabIndex = 5; - this.label5.Text = "Maintained by:"; - // // label6 // this.label6.AutoSize = true; this.label6.ForeColor = System.Drawing.Color.Crimson; - this.label6.Location = new System.Drawing.Point(90, 80); + this.label6.Location = new System.Drawing.Point(127, 80); this.label6.Name = "label6"; this.label6.Size = new System.Drawing.Size(39, 13); this.label6.TabIndex = 6; @@ -120,7 +112,7 @@ private void InitializeComponent() // this.label7.AutoSize = true; this.label7.ForeColor = System.Drawing.Color.Crimson; - this.label7.Location = new System.Drawing.Point(85, 102); + this.label7.Location = new System.Drawing.Point(127, 101); this.label7.Name = "label7"; this.label7.Size = new System.Drawing.Size(41, 13); this.label7.TabIndex = 7; @@ -130,7 +122,7 @@ private void InitializeComponent() // this.label8.AutoSize = true; this.label8.ForeColor = System.Drawing.Color.Crimson; - this.label8.Location = new System.Drawing.Point(118, 125); + this.label8.Location = new System.Drawing.Point(174, 101); this.label8.Name = "label8"; this.label8.Size = new System.Drawing.Size(37, 13); this.label8.TabIndex = 8; @@ -166,28 +158,28 @@ private void InitializeComponent() this.label12.AutoSize = true; this.label12.Location = new System.Drawing.Point(12, 194); this.label12.Name = "label12"; - this.label12.Size = new System.Drawing.Size(147, 13); + this.label12.Size = new System.Drawing.Size(151, 13); this.label12.TabIndex = 12; - this.label12.Text = "Latest Version of FFACE Visit:"; + this.label12.Text = "Latest Version of EliteAPI Visit:"; // // label13 // this.label13.AutoSize = true; this.label13.Location = new System.Drawing.Point(12, 229); this.label13.Name = "label13"; - this.label13.Size = new System.Drawing.Size(173, 13); + this.label13.Size = new System.Drawing.Size(180, 13); this.label13.TabIndex = 13; - this.label13.Text = "Latest Version of FFACETools Visit:"; + this.label13.Text = "Latest Version of EliteMMO.API Visit:"; // // linkLabel2 // this.linkLabel2.AutoSize = true; this.linkLabel2.Location = new System.Drawing.Point(12, 242); this.linkLabel2.Name = "linkLabel2"; - this.linkLabel2.Size = new System.Drawing.Size(242, 13); + this.linkLabel2.Size = new System.Drawing.Size(284, 13); this.linkLabel2.TabIndex = 14; this.linkLabel2.TabStop = true; - this.linkLabel2.Text = "https://github.com/h1pp0/FFACETools_ffevo.net"; + this.linkLabel2.Text = "http://ext.elitemmonetwork.com/downloads/elitemmo_api/"; this.linkLabel2.LinkClicked += new System.Windows.Forms.LinkLabelLinkClickedEventHandler(this.linkLabel2_LinkClicked); // // linkLabel3 @@ -195,18 +187,39 @@ private void InitializeComponent() this.linkLabel3.AutoSize = true; this.linkLabel3.Location = new System.Drawing.Point(13, 207); this.linkLabel3.Name = "linkLabel3"; - this.linkLabel3.Size = new System.Drawing.Size(207, 13); + this.linkLabel3.Size = new System.Drawing.Size(256, 13); this.linkLabel3.TabIndex = 15; this.linkLabel3.TabStop = true; - this.linkLabel3.Text = "http://www.ffevo.net/files/file/60-ffacedll/"; + this.linkLabel3.Text = "http://ext.elitemmonetwork.com/downloads/eliteapi/"; this.linkLabel3.LinkClicked += new System.Windows.Forms.LinkLabelLinkClickedEventHandler(this.linkLabel3_LinkClicked); // + // label5 + // + this.label5.AutoSize = true; + this.label5.Location = new System.Drawing.Point(13, 125); + this.label5.Name = "label5"; + this.label5.Size = new System.Drawing.Size(107, 13); + this.label5.TabIndex = 16; + this.label5.Text = "Ported to EliteAPI by:"; + // + // label14 + // + this.label14.AutoSize = true; + this.label14.ForeColor = System.Drawing.Color.Crimson; + this.label14.Location = new System.Drawing.Point(127, 125); + this.label14.Name = "label14"; + this.label14.Size = new System.Drawing.Size(41, 13); + this.label14.TabIndex = 17; + this.label14.Text = "atom0s"; + // // Form3 // this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; this.BackColor = System.Drawing.SystemColors.ControlLight; - this.ClientSize = new System.Drawing.Size(284, 262); + this.ClientSize = new System.Drawing.Size(313, 262); + this.Controls.Add(this.label14); + this.Controls.Add(this.label5); this.Controls.Add(this.linkLabel3); this.Controls.Add(this.linkLabel2); this.Controls.Add(this.label13); @@ -217,7 +230,6 @@ private void InitializeComponent() this.Controls.Add(this.label8); this.Controls.Add(this.label7); this.Controls.Add(this.label6); - this.Controls.Add(this.label5); this.Controls.Add(this.label4); this.Controls.Add(this.label3); this.Controls.Add(this.label2); @@ -239,7 +251,6 @@ private void InitializeComponent() private System.Windows.Forms.Label label2; private System.Windows.Forms.Label label3; private System.Windows.Forms.Label label4; - private System.Windows.Forms.Label label5; private System.Windows.Forms.Label label6; private System.Windows.Forms.Label label7; private System.Windows.Forms.Label label8; @@ -250,5 +261,7 @@ private void InitializeComponent() private System.Windows.Forms.Label label13; private System.Windows.Forms.LinkLabel linkLabel2; private System.Windows.Forms.LinkLabel linkLabel3; + private System.Windows.Forms.Label label14; + private System.Windows.Forms.Label label5; } } \ No newline at end of file diff --git a/Form3.cs b/Form3.cs index 72b5867..f545b64 100644 --- a/Form3.cs +++ b/Form3.cs @@ -13,23 +13,25 @@ public partial class Form3 : Form { public Form3() { - InitializeComponent(); + this.InitializeComponent(); + + this.label2.Text = Application.ProductVersion; } #region "== Form About" private void linkLabel1_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) { - System.Diagnostics.Process.Start("http://www.ffevo.net/topic/2960-cure-please/"); + System.Diagnostics.Process.Start("https://github.com/atom0s/Cure-Please"); } private void linkLabel2_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) { - System.Diagnostics.Process.Start("https://github.com/h1pp0/FFACETools_ffevo.net/blob/master/Binary/FFACETools.dll"); + System.Diagnostics.Process.Start("http://ext.elitemmonetwork.com/downloads/eliteapi/"); } private void linkLabel3_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) { - System.Diagnostics.Process.Start("http://www.ffevo.net/files/file/60-ffacedll/"); + System.Diagnostics.Process.Start("http://ext.elitemmonetwork.com/downloads/elitemmo_api/"); } } #endregion diff --git a/Items.cs b/Items.cs index b9c42f2..39143f1 100644 --- a/Items.cs +++ b/Items.cs @@ -3,7 +3,6 @@ using System.Linq; using System.Text; using System.Threading; -using FFACETools; namespace CurePlease { @@ -11,148 +10,148 @@ public partial class Form1 { public class Items { - private List TempItemListIDs; - - #region Item Enums - - public enum TempUsableItems : int - { - LucidEtherI = 5827, - LucidEtherII = 5828, - LucidEtherIII = 5829, - /*ManaMist = 5833, - ManaPowder = 4255, - DustyEther = 5432, - DustyElixir = 5433, - LucidElixirI = 5830, - LucidElixirII = 5831,*/ - Megalixir = 4254 - } - - public enum UsableMPItems : int - { - Mulsum = 4156, - Ether = 4128, - Ether1 = 4129, - Ether2 = 4130, - Ehter3 = 4131, - HiEther = 4132, - HiEther1 = 4133, - HiEther2 = 4134, - HiEther3 = 4135, - /*Elixir = , - ElixirVitae = , - VileElixir = , - HiElixir = , - VileElixir1 = */ - } - - public enum UsableMPMedicatedItems : int - { - // - } - - #endregion - - public Items() - { - TempItemListIDs = new List(); - GetTempItems(); - - // Usage: + // private List TempItemListIDs; + + // #region Item Enums + + // public enum TempUsableItems : int + // { + // LucidEtherI = 5827, + // LucidEtherII = 5828, + // LucidEtherIII = 5829, + // /*ManaMist = 5833, + // ManaPowder = 4255, + // DustyEther = 5432, + // DustyElixir = 5433, + // LucidElixirI = 5830, + // LucidElixirII = 5831,*/ + // Megalixir = 4254 + // } + + // public enum UsableMPItems : int + // { + // Mulsum = 4156, + // Ether = 4128, + // Ether1 = 4129, + // Ether2 = 4130, + // Ehter3 = 4131, + // HiEther = 4132, + // HiEther1 = 4133, + // HiEther2 = 4134, + // HiEther3 = 4135, + // /*Elixir = , + // ElixirVitae = , + // VileElixir = , + // HiElixir = , + // VileElixir1 = */ + // } + + // public enum UsableMPMedicatedItems : int + // { + // // + // } + + // #endregion + + // public Items() + // { + // this.TempItemListIDs = new List(); + // this.GetTempItems(); + + // // Usage: - } - - private List GetTempItems () - { - for (byte i = 1; i <= _FFACEPL.Item.TemporaryCount; i++) - { - - foreach (var tempUsableItem in Enum.GetValues(typeof(TempUsableItems))) - { - if (_FFACEPL.Item.GetTempItemIDByIndex(i) == (int)tempUsableItem) - { - TempItemListIDs.Add(_FFACEPL.Item.GetTempItemIDByIndex(i)); - } - } + // } + + // private List GetTempItems () + // { + // for (byte i = 1; i <= _ELITEAPIPL.Item.TemporaryCount; i++) + // { + + // foreach (var tempUsableItem in Enum.GetValues(typeof(TempUsableItems))) + // { + // if (_ELITEAPIPL.Item.GetTempItemIDByIndex(i) == (int)tempUsableItem) + // { + // this.TempItemListIDs.Add(_ELITEAPIPL.Item.GetTempItemIDByIndex(i)); + // } + // } - } - return TempItemListIDs; - } - - private bool HasTempItem (TempUsableItems tempitemname) - { - if (_FFACEPL.Item.GetTempItemCount((ushort)Enum.Parse(typeof(TempUsableItems), tempitemname.ToString())) > 0) - { - return true; - } - return false; - } - - public void TempItemUsageDetermination () - { - // Only continue if we have the option to use low MP items selected - if (!Properties.Settings.Default.lowMPuseitem) - return; - - // Don't use items if your weakened - if (_FFACEPL.Player.StatusEffects.Any(status => status == StatusEffect.Weakness)) - { - return; - } - - int mpcurrent = _FFACEPL.Player.MPCurrent; - int mpmax = _FFACEPL.Player.MPMax; - int mppcurrent = _FFACEPL.Player.MPPCurrent; + // } + // return this.TempItemListIDs; + // } + + // private bool HasTempItem (TempUsableItems tempitemname) + // { + // if (_ELITEAPIPL.Item.GetTempItemCount((ushort)Enum.Parse(typeof(TempUsableItems), tempitemname.ToString())) > 0) + // { + // return true; + // } + // return false; + // } + + // public void TempItemUsageDetermination () + // { + // // Only continue if we have the option to use low MP items selected + // if (!Properties.Settings.Default.lowMPuseitem) + // return; + + // // Don't use items if your weakened + // if (_ELITEAPIPL.Player.StatusEffects.Any(status => status == StatusEffect.Weakness)) + // { + // return; + // } + + // int mpcurrent = _ELITEAPIPL.Player.MPCurrent; + // int mpmax = _ELITEAPIPL.Player.MPMax; + // int mppcurrent = _ELITEAPIPL.Player.MPPCurrent; - if (mpcurrent + 1000 < mpmax) - { - if (HasTempItem(TempUsableItems.LucidEtherIII)) - { - UseItem(TempUsableItems.LucidEtherIII); - Thread.Sleep(1500); - } - } - else if (( mpcurrent + 500 ) < mpmax) - { - if (HasTempItem(TempUsableItems.LucidEtherII)) - { - UseItem(TempUsableItems.LucidEtherII); - Thread.Sleep(1500); - } - } - else if (mppcurrent + 250 < mpmax) - { - if (HasTempItem(TempUsableItems.LucidEtherI)) - { - UseItem(TempUsableItems.LucidEtherI); - Thread.Sleep(1500); - } - } - // If we are out of MP then we need to use the megaelixir - else if (mpcurrent <= Properties.Settings.Default.mpMinCastValue) - { - if (HasTempItem(TempUsableItems.Megalixir)) - { - UseItem(TempUsableItems.Megalixir); - Thread.Sleep(3500); - } - } - } - - private void UseItem(TempUsableItems item) - { - if (_FFACEPL.Player.Status == Status.Standing && HasTempItem(item)) - { - _FFACEPL.Windower.SendString(string.Format("/item {0} ", FFACE.ParseResources.GetItemName((int)Enum.Parse(typeof(TempUsableItems), item.ToString())))); - } - } - - private int GetMPPfromInt() - { - return ((_FFACEPL.Player.MPCurrent/_FFACEPL.Player.MPMax)*100); - } + // if (mpcurrent + 1000 < mpmax) + // { + // if (this.HasTempItem(TempUsableItems.LucidEtherIII)) + // { + // this.UseItem(TempUsableItems.LucidEtherIII); + // Thread.Sleep(1500); + // } + // } + // else if (( mpcurrent + 500 ) < mpmax) + // { + // if (this.HasTempItem(TempUsableItems.LucidEtherII)) + // { + // this.UseItem(TempUsableItems.LucidEtherII); + // Thread.Sleep(1500); + // } + // } + // else if (mppcurrent + 250 < mpmax) + // { + // if (this.HasTempItem(TempUsableItems.LucidEtherI)) + // { + // this.UseItem(TempUsableItems.LucidEtherI); + // Thread.Sleep(1500); + // } + // } + // // If we are out of MP then we need to use the megaelixir + // else if (mpcurrent <= Properties.Settings.Default.mpMinCastValue) + // { + // if (this.HasTempItem(TempUsableItems.Megalixir)) + // { + // this.UseItem(TempUsableItems.Megalixir); + // Thread.Sleep(3500); + // } + // } + // } + + // private void UseItem(TempUsableItems item) + // { + // if (_ELITEAPIPL.Player.Status == Status.Standing && this.HasTempItem(item)) + // { + // _ELITEAPIPL.ThirdParty.SendString(string.Format("/item {0} ", FFACE.ParseResources.GetItemName((int)Enum.Parse(typeof(TempUsableItems), item.ToString())))); + // } + // } + + // private int GetMPPfromInt() + // { + // return ((_ELITEAPIPL.Player.MPCurrent/_ELITEAPIPL.Player.MPMax)*100); + // } } } } diff --git a/ProgressBar.cs b/ProgressBar.cs index 5d1bb87..1a6504e 100644 --- a/ProgressBar.cs +++ b/ProgressBar.cs @@ -8,7 +8,7 @@ public class NewProgressBar : ProgressBar { public NewProgressBar () { - SetStyle(ControlStyles.UserPaint, true); + this.SetStyle(ControlStyles.UserPaint, true); } protected override void OnPaintBackground (PaintEventArgs pevent) @@ -20,20 +20,20 @@ protected override void OnPaint (PaintEventArgs e) { const int inset = 1; // A single inset value to control the sizing of the inner rect. - using (Image offscreenImage = new Bitmap(Width, Height)) + using (Image offscreenImage = new Bitmap(this.Width, this.Height)) { - using (Graphics offscreen = Graphics.FromImage(offscreenImage)) + using (var offscreen = Graphics.FromImage(offscreenImage)) { - Rectangle rect = new Rectangle(0, 0, Width, Height); + var rect = new Rectangle(0, 0, this.Width, this.Height); if (ProgressBarRenderer.IsSupported) ProgressBarRenderer.DrawHorizontalBar(offscreen, rect); rect.Inflate(new Size(-inset, -inset)); // Deflate inner rect. - rect.Width = (int)( rect.Width * ( (double)Value / Maximum ) ); + rect.Width = (int)( rect.Width * ( (double)this.Value / this.Maximum ) ); if (rect.Width == 0) rect.Width = 1; // Can't draw rec with width of 0. - LinearGradientBrush brush = new LinearGradientBrush(rect, BackColor, ForeColor, LinearGradientMode.Vertical); + var brush = new LinearGradientBrush(rect, this.BackColor, this.ForeColor, LinearGradientMode.Vertical); offscreen.FillRectangle(brush, inset, inset, rect.Width, rect.Height); e.Graphics.DrawImage(offscreenImage, 0, 0); diff --git a/Properties/AssemblyInfo.cs b/Properties/AssemblyInfo.cs index 52ab9ba..2f473cb 100644 --- a/Properties/AssemblyInfo.cs +++ b/Properties/AssemblyInfo.cs @@ -10,7 +10,7 @@ [assembly: AssemblyConfiguration("")] [assembly: AssemblyCompany("")] [assembly: AssemblyProduct("Cure Please")] -[assembly: AssemblyCopyright("Copyright © 2013")] +[assembly: AssemblyCopyright("Copyright © 2013 (Updates by atom0s)")] [assembly: AssemblyTrademark("")] [assembly: AssemblyCulture("")] @@ -32,5 +32,5 @@ // You can specify all the values or you can default the Build and Revision Numbers // by using the '*' as shown below: // [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("1.0.2.1")] -[assembly: AssemblyFileVersion("1.0.2.1")] +[assembly: AssemblyVersion("2.0.0.0")] +[assembly: AssemblyFileVersion("2.0.0.0")] diff --git a/Properties/Resources.Designer.cs b/Properties/Resources.Designer.cs index e62f291..fadba1c 100644 --- a/Properties/Resources.Designer.cs +++ b/Properties/Resources.Designer.cs @@ -39,7 +39,7 @@ internal Resources() { internal static global::System.Resources.ResourceManager ResourceManager { get { if (object.ReferenceEquals(resourceMan, null)) { - global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("CurePlease.Properties.Resources", typeof(Resources).Assembly); + var temp = new global::System.Resources.ResourceManager("CurePlease.Properties.Resources", typeof(Resources).Assembly); resourceMan = temp; } return resourceMan;