Skip to main content

terra_plr/player/
buff.rs

1use time::Duration;
2
3#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)]
4#[non_exhaustive]
5pub enum Buff {
6    ObsidianSkin = 1,
7    Regeneration = 2,
8    Swiftness = 3,
9    Gills = 4,
10    Ironskin = 5,
11    ManaRegeneration = 6,
12    MagicPower = 7,
13    Featherfall = 8,
14    Spelunker = 9,
15    Invisibility = 10,
16    Shine = 11,
17    NightOwl = 12,
18    Battle = 13,
19    Thorns = 14,
20    WaterWalking = 15,
21    Archery = 16,
22    Hunter = 17,
23    Gravitation = 18,
24    ShadowOrb = 19,
25    Poisoned = 20,
26    PotionSickness = 21,
27    Darkness = 22,
28    Cursed = 23,
29    OnFire = 24,
30    Tipsy = 25,
31    WellFed = 26,
32    FairyBlue = 27,
33    Werewolf = 28,
34    Clairvoyance = 29,
35    Bleeding = 30,
36    Confused = 31,
37    Slow = 32,
38    Weak = 33,
39    Merfolk = 34,
40    Silenced = 35,
41    BrokenArmor = 36,
42    Horrified = 37,
43    TheTongue = 38,
44    CursedInferno = 39,
45    PetBunny = 40,
46    BabyPenguin = 41,
47    PetTurtle = 42,
48    PaladinsShield = 43,
49    Frostburn = 44,
50    BabyEater = 45,
51    Chilled = 46,
52    Frozen = 47,
53    Honey = 48,
54    Pygmies = 49,
55    BabySkeletronHead = 50,
56    BabyHornet = 51,
57    TikiSpirit = 52,
58    PetLizard = 53,
59    PetParrot = 54,
60    BabyTruffle = 55,
61    PetSapling = 56,
62    Wisp = 57,
63    RapidHealing = 58,
64    ShadowDodge = 59,
65    LeafCrystal = 60,
66    BabyDinosaur = 61,
67    IceBarrier = 62,
68    Panic = 63,
69    BabySlime = 64,
70    EyeballSpring = 65,
71    BabySnowman = 66,
72    Burning = 67,
73    Suffocation = 68,
74    Ichor = 69,
75    Venom = 70,
76    WeaponImbueVenom = 71,
77    Midas = 72,
78    WeaponImbueCursedFlames = 73,
79    WeaponImbueFire = 74,
80    WeaponImbueGold = 75,
81    WeaponImbueIchor = 76,
82    WeaponImbueNanites = 77,
83    WeaponImbueConfetti = 78,
84    WeaponImbuePoison = 79,
85    Blackout = 80,
86    PetSpider = 81,
87    Squashling = 82,
88    Ravens = 83,
89    BlackCat = 84,
90    CursedSapling = 85,
91    WaterCandle = 86,
92    Campfire = 87,
93    ChaosState = 88,
94    HeartLamp = 89,
95    Rudolph = 90,
96    Puppy = 91,
97    BabyGrinch = 92,
98    AmmoBox = 93,
99    ManaSickness = 94,
100    BeetleEndurance1 = 95,
101    BeetleEndurance2 = 96,
102    BeetleEndurance3 = 97,
103    BeetleMight1 = 98,
104    BeetleMight2 = 99,
105    BeetleMight3 = 100,
106    FairyRed = 101,
107    FairyGreen = 102,
108    Wet = 103,
109    Mining = 104,
110    Heartreach = 105,
111    Calm = 106,
112    Builder = 107,
113    Titan = 108,
114    Flipper = 109,
115    Summoning = 110,
116    Dangersense = 111,
117    AmmoReservation = 112,
118    Lifeforce = 113,
119    Endurance = 114,
120    Rage = 115,
121    Inferno = 116,
122    Wrath = 117,
123    MinecartLeft = 118,
124    Lovestruck = 119,
125    Stinky = 120,
126    Fishing = 121,
127    Sonar = 122,
128    Crate = 123,
129    Warmth = 124,
130    HornetMinion = 125,
131    ImpMinion = 126,
132    ZephyrFish = 127,
133    BunnyMount = 128,
134    PigronMount = 129,
135    SlimeMount = 130,
136    TurtleMount = 131,
137    BeeMount = 132,
138    SpiderMinion = 133,
139    TwinEyesMinion = 134,
140    PirateMinion = 135,
141    MiniMinotaur = 136,
142    Slimed = 137,
143    MinecartRight = 138,
144    SharknadoMinion = 139,
145    UFOMinion = 140,
146    UFOMount = 141,
147    DrillMount = 142,
148    ScutlixMount = 143,
149    Electrified = 144,
150    MoonLeech = 145,
151    Sunflower = 146,
152    MonsterBanner = 147,
153    Rabies = 148,
154    Webbed = 149,
155    Bewitched = 150,
156    SoulDrain = 151,
157    MagicLantern = 152,
158    ShadowFlame = 153,
159    BabyFaceMonster = 154,
160    CrimsonHeart = 155,
161    Stoned = 156,
162    PeaceCandle = 157,
163    StarInBottle = 158,
164    Sharpened = 159,
165    Dazed = 160,
166    DeadlySphere = 161,
167    UnicornMount = 162,
168    Obstructed = 163,
169    VortexDebuff = 164,
170    DryadsWard = 165,
171    MinecartRightMech = 166,
172    MinecartLeftMech = 167,
173    CuteFishronMount = 168,
174    BoneJavelin = 169,
175    SolarShield1 = 170,
176    SolarShield2 = 171,
177    SolarShield3 = 172,
178    NebulaUpLife1 = 173,
179    NebulaUpLife2 = 174,
180    NebulaUpLife3 = 175,
181    NebulaUpMana1 = 176,
182    NebulaUpMana2 = 177,
183    NebulaUpMana3 = 178,
184    NebulaUpDmg1 = 179,
185    NebulaUpDmg2 = 180,
186    NebulaUpDmg3 = 181,
187    StardustMinion = 182,
188    StardustMinionBleed = 183,
189    MinecartLeftWood = 184,
190    MinecartRightWood = 185,
191    DryadsWardDebuff = 186,
192    StardustGuardianMinion = 187,
193    StardustDragonMinion = 188,
194    Daybreak = 189,
195    SuspiciousTentacle = 190,
196    CompanionCube = 191,
197    SugarRush = 192,
198    BasiliskMount = 193,
199    WindPushed = 194,
200    WitheredArmor = 195,
201    WitheredWeapon = 196,
202    OgreSpit = 197,
203    ParryDamage = 198,
204    NoBuilding = 199,
205    PetDD2Gato = 200,
206    PetDD2Ghost = 201,
207    PetDD2Dragon = 202,
208    BetsysCurse = 203,
209    Oiled = 204,
210    BallistaPanic = 205,
211    PlentySatisfied = 206,
212    ExquisitelyStuffed = 207,
213    DesertMinecartRight = 208,
214    DesertMinecartLeft = 209,
215    FishMinecartRight = 210,
216    FishMinecartLeft = 211,
217    GolfCartMount = 212,
218    BatOfLight = 213,
219    VampireFrog = 214,
220    CatBast = 215,
221    BabyBird = 216,
222    UpbeatStar = 217,
223    SugarGlider = 218,
224    SharkPup = 219,
225    BeeMinecartRight = 220,
226    BeeMinecartLeft = 221,
227    LadybugMinecartRight = 222,
228    LadybugMinecartLeft = 223,
229    PigronMinecartRight = 224,
230    PigronMinecartLeft = 225,
231    SunflowerMinecartRight = 226,
232    SunflowerMinecartLeft = 227,
233    HellMinecartRight = 228,
234    HellMinecartLeft = 229,
235    WitchBroom = 230,
236    ShroomMinecartRight = 231,
237    ShroomMinecartLeft = 232,
238    AmethystMinecartRight = 233,
239    AmethystMinecartLeft = 234,
240    TopazMinecartRight = 235,
241    TopazMinecartLeft = 236,
242    SapphireMinecartRight = 237,
243    SapphireMinecartLeft = 238,
244    EmeraldMinecartRight = 239,
245    EmeraldMinecartLeft = 240,
246    RubyMinecartRight = 241,
247    RubyMinecartLeft = 242,
248    DiamondMinecartRight = 243,
249    DiamondMinecartLeft = 244,
250    AmberMinecartRight = 245,
251    AmberMinecartLeft = 246,
252    BeetleMinecartRight = 247,
253    BeetleMinecartLeft = 248,
254    MeowmereMinecartRight = 249,
255    MeowmereMinecartLeft = 250,
256    PartyMinecartRight = 251,
257    PartyMinecartLeft = 252,
258    PirateMinecartRight = 253,
259    PirateMinecartLeft = 254,
260    SteampunkMinecartRight = 255,
261    SteampunkMinecartLeft = 256,
262    Lucky = 257,
263    LilHarpy = 258,
264    FennecFox = 259,
265    GlitteryButterfly = 260,
266    BabyImp = 261,
267    BabyRedPanda = 262,
268    StormTiger = 263,
269    Plantero = 264,
270    Flamingo = 265,
271    DynamiteKitten = 266,
272    BabyWerewolf = 267,
273    ShadowMimic = 268,
274    CoffinMinecartRight = 269,
275    CoffinMinecartLeft = 270,
276    Smolstar = 271,
277    DiggingMoleMinecartRight = 272,
278    DiggingMoleMinecartLeft = 273,
279    VoltBunny = 274,
280    PaintedHorseMount = 275,
281    MajesticHorseMount = 276,
282    DarkHorseMount = 277,
283    PogoStickMount = 278,
284    PirateShipMount = 279,
285    SpookyWoodMount = 280,
286    SantankMount = 281,
287    WallOfFleshGoatMount = 282,
288    DarkMageBookMount = 283,
289    KingSlimePet = 284,
290    EyeOfCthulhuPet = 285,
291    EaterOfWorldsPet = 286,
292    BrainOfCthulhuPet = 287,
293    SkeletronPet = 288,
294    QueenBeePet = 289,
295    DestroyerPet = 290,
296    TwinsPet = 291,
297    SkeletronPrimePet = 292,
298    PlanteraPet = 293,
299    GolemPet = 294,
300    DukeFishronPet = 295,
301    LunaticCultistPet = 296,
302    MoonLordPet = 297,
303    FairyQueenPet = 298,
304    PumpkingPet = 299,
305    EverscreamPet = 300,
306    IceQueenPet = 301,
307    MartianPet = 302,
308    DD2OgrePet = 303,
309    DD2BetsyPet = 304,
310    LavaSharkMount = 305,
311    TitaniumStorm = 306,
312    BlandWhipEnemyDebuff = 307,
313    SwordWhipPlayer = 308,
314    SwordWhipNPCDebuff = 309,
315    ScytheWhipEnemyDebuff = 310,
316    ScytheWhipPlayer = 311,
317    CoolWhipPlayer = 312,
318    FlameWhipEnemyDebuff = 313,
319    ThornWhipPlayer = 314,
320    ThornWhipNPCDebuff = 315,
321    RainbowWhipNPCDebuff = 316,
322    QueenSlimePet = 317,
323    QueenSlimeMount = 318,
324    MaceWhipNPCDebuff = 319,
325    GelBalloon = 320,
326    BrainOfConfusion = 321,
327    EmpressBlade = 322,
328    Hellfire = 323,
329    Frostbite = 324,
330    FlinxMinion = 325,
331    BoneWhipNPCDebuff = 326,
332    BerniePet = 327,
333    GlommerPet = 328,
334    DeerclopsPet = 329,
335    PigPet = 330,
336    ChesterPet = 331,
337    NeutralHunger = 332,
338    Hunger = 333,
339    Starving = 334,
340    AbigailMinion = 335,
341    HeartyMeal = 336,
342    TentacleSpike = 337,
343    FartMinecartRight = 338,
344    FartMinecartLeft = 339,
345    CoolWhipNPCDebuff = 340,
346    DualSlimePet = 341,
347    WolfMount = 342,
348    BiomeSight = 343,
349    BloodButcherer = 344,
350    JunimoPet = 345,
351    TerraFartMinecartRight = 346,
352    TerraFartMinecartLeft = 347,
353    WarTable = 348,
354    BlueChickenPet = 349,
355    ShadowCandle = 350,
356    Spiffo = 351,
357    CavelingGardener = 352,
358    Shimmer = 353,
359    DirtiestBlock = 354,
360    DeadCellsMushroomBoiMinion = 355,
361    DeadCellsSwarmBiter = 356,
362    CobWhipNPCDebuff = 357,
363    CorruptWhipNPCDebuff = 358,
364    CrimsonWhipNPCDebuff = 359,
365    MeteorWhipNPCDebuff = 360,
366    FlowerWhipNPCDebuff = 361,
367    EelWhipNPCDebuff = 362,
368    ConstellationWhipNPCDebuff = 363,
369    MoonLordWhipNPCDebuff = 364,
370    CobWhipPlayerBuff = 365,
371    DeadCellsPotionStation = 366,
372    FlowerWhipNPCDebuffProc = 367,
373    MoonLordWhipNPCDebuffProc = 368,
374    MeteorWhipNPCDebuffProc = 369,
375    VelociraptorMount = 370,
376    Pufferfish = 371,
377    AxeFairyPet = 372,
378    BoulderPet = 373,
379    RatMount = 374,
380    Hemorrhage = 375,
381    TorchGodPotion = 376,
382    BatMount = 377,
383    RollerSkatesMount = 378,
384    RollerSkatesGreenMount = 379,
385    RollerSkatesWhiteMount = 380,
386    RollerSkatesPinkMount = 381,
387    RainbowBoulderPet = 382,
388    Kite = 383,
389    PixieMount = 384,
390    CattivaMinion = 385,
391    FoxsparksMinion = 386,
392    ChilletPet = 387,
393    ChilletIgnisPet = 388,
394}
395
396impl Buff {
397    pub fn to_id(self) -> i32 {
398        self as i32
399    }
400
401    pub fn from_id(id: i32) -> Option<Self> {
402        Some(match id {
403            1 => Buff::ObsidianSkin,
404            2 => Buff::Regeneration,
405            3 => Buff::Swiftness,
406            4 => Buff::Gills,
407            5 => Buff::Ironskin,
408            6 => Buff::ManaRegeneration,
409            7 => Buff::MagicPower,
410            8 => Buff::Featherfall,
411            9 => Buff::Spelunker,
412            10 => Buff::Invisibility,
413            11 => Buff::Shine,
414            12 => Buff::NightOwl,
415            13 => Buff::Battle,
416            14 => Buff::Thorns,
417            15 => Buff::WaterWalking,
418            16 => Buff::Archery,
419            17 => Buff::Hunter,
420            18 => Buff::Gravitation,
421            19 => Buff::ShadowOrb,
422            20 => Buff::Poisoned,
423            21 => Buff::PotionSickness,
424            22 => Buff::Darkness,
425            23 => Buff::Cursed,
426            24 => Buff::OnFire,
427            25 => Buff::Tipsy,
428            26 => Buff::WellFed,
429            27 => Buff::FairyBlue,
430            28 => Buff::Werewolf,
431            29 => Buff::Clairvoyance,
432            30 => Buff::Bleeding,
433            31 => Buff::Confused,
434            32 => Buff::Slow,
435            33 => Buff::Weak,
436            34 => Buff::Merfolk,
437            35 => Buff::Silenced,
438            36 => Buff::BrokenArmor,
439            37 => Buff::Horrified,
440            38 => Buff::TheTongue,
441            39 => Buff::CursedInferno,
442            40 => Buff::PetBunny,
443            41 => Buff::BabyPenguin,
444            42 => Buff::PetTurtle,
445            43 => Buff::PaladinsShield,
446            44 => Buff::Frostburn,
447            45 => Buff::BabyEater,
448            46 => Buff::Chilled,
449            47 => Buff::Frozen,
450            48 => Buff::Honey,
451            49 => Buff::Pygmies,
452            50 => Buff::BabySkeletronHead,
453            51 => Buff::BabyHornet,
454            52 => Buff::TikiSpirit,
455            53 => Buff::PetLizard,
456            54 => Buff::PetParrot,
457            55 => Buff::BabyTruffle,
458            56 => Buff::PetSapling,
459            57 => Buff::Wisp,
460            58 => Buff::RapidHealing,
461            59 => Buff::ShadowDodge,
462            60 => Buff::LeafCrystal,
463            61 => Buff::BabyDinosaur,
464            62 => Buff::IceBarrier,
465            63 => Buff::Panic,
466            64 => Buff::BabySlime,
467            65 => Buff::EyeballSpring,
468            66 => Buff::BabySnowman,
469            67 => Buff::Burning,
470            68 => Buff::Suffocation,
471            69 => Buff::Ichor,
472            70 => Buff::Venom,
473            71 => Buff::WeaponImbueVenom,
474            72 => Buff::Midas,
475            73 => Buff::WeaponImbueCursedFlames,
476            74 => Buff::WeaponImbueFire,
477            75 => Buff::WeaponImbueGold,
478            76 => Buff::WeaponImbueIchor,
479            77 => Buff::WeaponImbueNanites,
480            78 => Buff::WeaponImbueConfetti,
481            79 => Buff::WeaponImbuePoison,
482            80 => Buff::Blackout,
483            81 => Buff::PetSpider,
484            82 => Buff::Squashling,
485            83 => Buff::Ravens,
486            84 => Buff::BlackCat,
487            85 => Buff::CursedSapling,
488            86 => Buff::WaterCandle,
489            87 => Buff::Campfire,
490            88 => Buff::ChaosState,
491            89 => Buff::HeartLamp,
492            90 => Buff::Rudolph,
493            91 => Buff::Puppy,
494            92 => Buff::BabyGrinch,
495            93 => Buff::AmmoBox,
496            94 => Buff::ManaSickness,
497            95 => Buff::BeetleEndurance1,
498            96 => Buff::BeetleEndurance2,
499            97 => Buff::BeetleEndurance3,
500            98 => Buff::BeetleMight1,
501            99 => Buff::BeetleMight2,
502            100 => Buff::BeetleMight3,
503            101 => Buff::FairyRed,
504            102 => Buff::FairyGreen,
505            103 => Buff::Wet,
506            104 => Buff::Mining,
507            105 => Buff::Heartreach,
508            106 => Buff::Calm,
509            107 => Buff::Builder,
510            108 => Buff::Titan,
511            109 => Buff::Flipper,
512            110 => Buff::Summoning,
513            111 => Buff::Dangersense,
514            112 => Buff::AmmoReservation,
515            113 => Buff::Lifeforce,
516            114 => Buff::Endurance,
517            115 => Buff::Rage,
518            116 => Buff::Inferno,
519            117 => Buff::Wrath,
520            118 => Buff::MinecartLeft,
521            119 => Buff::Lovestruck,
522            120 => Buff::Stinky,
523            121 => Buff::Fishing,
524            122 => Buff::Sonar,
525            123 => Buff::Crate,
526            124 => Buff::Warmth,
527            125 => Buff::HornetMinion,
528            126 => Buff::ImpMinion,
529            127 => Buff::ZephyrFish,
530            128 => Buff::BunnyMount,
531            129 => Buff::PigronMount,
532            130 => Buff::SlimeMount,
533            131 => Buff::TurtleMount,
534            132 => Buff::BeeMount,
535            133 => Buff::SpiderMinion,
536            134 => Buff::TwinEyesMinion,
537            135 => Buff::PirateMinion,
538            136 => Buff::MiniMinotaur,
539            137 => Buff::Slimed,
540            138 => Buff::MinecartRight,
541            139 => Buff::SharknadoMinion,
542            140 => Buff::UFOMinion,
543            141 => Buff::UFOMount,
544            142 => Buff::DrillMount,
545            143 => Buff::ScutlixMount,
546            144 => Buff::Electrified,
547            145 => Buff::MoonLeech,
548            146 => Buff::Sunflower,
549            147 => Buff::MonsterBanner,
550            148 => Buff::Rabies,
551            149 => Buff::Webbed,
552            150 => Buff::Bewitched,
553            151 => Buff::SoulDrain,
554            152 => Buff::MagicLantern,
555            153 => Buff::ShadowFlame,
556            154 => Buff::BabyFaceMonster,
557            155 => Buff::CrimsonHeart,
558            156 => Buff::Stoned,
559            157 => Buff::PeaceCandle,
560            158 => Buff::StarInBottle,
561            159 => Buff::Sharpened,
562            160 => Buff::Dazed,
563            161 => Buff::DeadlySphere,
564            162 => Buff::UnicornMount,
565            163 => Buff::Obstructed,
566            164 => Buff::VortexDebuff,
567            165 => Buff::DryadsWard,
568            166 => Buff::MinecartRightMech,
569            167 => Buff::MinecartLeftMech,
570            168 => Buff::CuteFishronMount,
571            169 => Buff::BoneJavelin,
572            170 => Buff::SolarShield1,
573            171 => Buff::SolarShield2,
574            172 => Buff::SolarShield3,
575            173 => Buff::NebulaUpLife1,
576            174 => Buff::NebulaUpLife2,
577            175 => Buff::NebulaUpLife3,
578            176 => Buff::NebulaUpMana1,
579            177 => Buff::NebulaUpMana2,
580            178 => Buff::NebulaUpMana3,
581            179 => Buff::NebulaUpDmg1,
582            180 => Buff::NebulaUpDmg2,
583            181 => Buff::NebulaUpDmg3,
584            182 => Buff::StardustMinion,
585            183 => Buff::StardustMinionBleed,
586            184 => Buff::MinecartLeftWood,
587            185 => Buff::MinecartRightWood,
588            186 => Buff::DryadsWardDebuff,
589            187 => Buff::StardustGuardianMinion,
590            188 => Buff::StardustDragonMinion,
591            189 => Buff::Daybreak,
592            190 => Buff::SuspiciousTentacle,
593            191 => Buff::CompanionCube,
594            192 => Buff::SugarRush,
595            193 => Buff::BasiliskMount,
596            194 => Buff::WindPushed,
597            195 => Buff::WitheredArmor,
598            196 => Buff::WitheredWeapon,
599            197 => Buff::OgreSpit,
600            198 => Buff::ParryDamage,
601            199 => Buff::NoBuilding,
602            200 => Buff::PetDD2Gato,
603            201 => Buff::PetDD2Ghost,
604            202 => Buff::PetDD2Dragon,
605            203 => Buff::BetsysCurse,
606            204 => Buff::Oiled,
607            205 => Buff::BallistaPanic,
608            206 => Buff::PlentySatisfied,
609            207 => Buff::ExquisitelyStuffed,
610            208 => Buff::DesertMinecartRight,
611            209 => Buff::DesertMinecartLeft,
612            210 => Buff::FishMinecartRight,
613            211 => Buff::FishMinecartLeft,
614            212 => Buff::GolfCartMount,
615            213 => Buff::BatOfLight,
616            214 => Buff::VampireFrog,
617            215 => Buff::CatBast,
618            216 => Buff::BabyBird,
619            217 => Buff::UpbeatStar,
620            218 => Buff::SugarGlider,
621            219 => Buff::SharkPup,
622            220 => Buff::BeeMinecartRight,
623            221 => Buff::BeeMinecartLeft,
624            222 => Buff::LadybugMinecartRight,
625            223 => Buff::LadybugMinecartLeft,
626            224 => Buff::PigronMinecartRight,
627            225 => Buff::PigronMinecartLeft,
628            226 => Buff::SunflowerMinecartRight,
629            227 => Buff::SunflowerMinecartLeft,
630            228 => Buff::HellMinecartRight,
631            229 => Buff::HellMinecartLeft,
632            230 => Buff::WitchBroom,
633            231 => Buff::ShroomMinecartRight,
634            232 => Buff::ShroomMinecartLeft,
635            233 => Buff::AmethystMinecartRight,
636            234 => Buff::AmethystMinecartLeft,
637            235 => Buff::TopazMinecartRight,
638            236 => Buff::TopazMinecartLeft,
639            237 => Buff::SapphireMinecartRight,
640            238 => Buff::SapphireMinecartLeft,
641            239 => Buff::EmeraldMinecartRight,
642            240 => Buff::EmeraldMinecartLeft,
643            241 => Buff::RubyMinecartRight,
644            242 => Buff::RubyMinecartLeft,
645            243 => Buff::DiamondMinecartRight,
646            244 => Buff::DiamondMinecartLeft,
647            245 => Buff::AmberMinecartRight,
648            246 => Buff::AmberMinecartLeft,
649            247 => Buff::BeetleMinecartRight,
650            248 => Buff::BeetleMinecartLeft,
651            249 => Buff::MeowmereMinecartRight,
652            250 => Buff::MeowmereMinecartLeft,
653            251 => Buff::PartyMinecartRight,
654            252 => Buff::PartyMinecartLeft,
655            253 => Buff::PirateMinecartRight,
656            254 => Buff::PirateMinecartLeft,
657            255 => Buff::SteampunkMinecartRight,
658            256 => Buff::SteampunkMinecartLeft,
659            257 => Buff::Lucky,
660            258 => Buff::LilHarpy,
661            259 => Buff::FennecFox,
662            260 => Buff::GlitteryButterfly,
663            261 => Buff::BabyImp,
664            262 => Buff::BabyRedPanda,
665            263 => Buff::StormTiger,
666            264 => Buff::Plantero,
667            265 => Buff::Flamingo,
668            266 => Buff::DynamiteKitten,
669            267 => Buff::BabyWerewolf,
670            268 => Buff::ShadowMimic,
671            269 => Buff::CoffinMinecartRight,
672            270 => Buff::CoffinMinecartLeft,
673            271 => Buff::Smolstar,
674            272 => Buff::DiggingMoleMinecartRight,
675            273 => Buff::DiggingMoleMinecartLeft,
676            274 => Buff::VoltBunny,
677            275 => Buff::PaintedHorseMount,
678            276 => Buff::MajesticHorseMount,
679            277 => Buff::DarkHorseMount,
680            278 => Buff::PogoStickMount,
681            279 => Buff::PirateShipMount,
682            280 => Buff::SpookyWoodMount,
683            281 => Buff::SantankMount,
684            282 => Buff::WallOfFleshGoatMount,
685            283 => Buff::DarkMageBookMount,
686            284 => Buff::KingSlimePet,
687            285 => Buff::EyeOfCthulhuPet,
688            286 => Buff::EaterOfWorldsPet,
689            287 => Buff::BrainOfCthulhuPet,
690            288 => Buff::SkeletronPet,
691            289 => Buff::QueenBeePet,
692            290 => Buff::DestroyerPet,
693            291 => Buff::TwinsPet,
694            292 => Buff::SkeletronPrimePet,
695            293 => Buff::PlanteraPet,
696            294 => Buff::GolemPet,
697            295 => Buff::DukeFishronPet,
698            296 => Buff::LunaticCultistPet,
699            297 => Buff::MoonLordPet,
700            298 => Buff::FairyQueenPet,
701            299 => Buff::PumpkingPet,
702            300 => Buff::EverscreamPet,
703            301 => Buff::IceQueenPet,
704            302 => Buff::MartianPet,
705            303 => Buff::DD2OgrePet,
706            304 => Buff::DD2BetsyPet,
707            305 => Buff::LavaSharkMount,
708            306 => Buff::TitaniumStorm,
709            307 => Buff::BlandWhipEnemyDebuff,
710            308 => Buff::SwordWhipPlayer,
711            309 => Buff::SwordWhipNPCDebuff,
712            310 => Buff::ScytheWhipEnemyDebuff,
713            311 => Buff::ScytheWhipPlayer,
714            312 => Buff::CoolWhipPlayer,
715            313 => Buff::FlameWhipEnemyDebuff,
716            314 => Buff::ThornWhipPlayer,
717            315 => Buff::ThornWhipNPCDebuff,
718            316 => Buff::RainbowWhipNPCDebuff,
719            317 => Buff::QueenSlimePet,
720            318 => Buff::QueenSlimeMount,
721            319 => Buff::MaceWhipNPCDebuff,
722            320 => Buff::GelBalloon,
723            321 => Buff::BrainOfConfusion,
724            322 => Buff::EmpressBlade,
725            323 => Buff::Hellfire,
726            324 => Buff::Frostbite,
727            325 => Buff::FlinxMinion,
728            326 => Buff::BoneWhipNPCDebuff,
729            327 => Buff::BerniePet,
730            328 => Buff::GlommerPet,
731            329 => Buff::DeerclopsPet,
732            330 => Buff::PigPet,
733            331 => Buff::ChesterPet,
734            332 => Buff::NeutralHunger,
735            333 => Buff::Hunger,
736            334 => Buff::Starving,
737            335 => Buff::AbigailMinion,
738            336 => Buff::HeartyMeal,
739            337 => Buff::TentacleSpike,
740            338 => Buff::FartMinecartRight,
741            339 => Buff::FartMinecartLeft,
742            340 => Buff::CoolWhipNPCDebuff,
743            341 => Buff::DualSlimePet,
744            342 => Buff::WolfMount,
745            343 => Buff::BiomeSight,
746            344 => Buff::BloodButcherer,
747            345 => Buff::JunimoPet,
748            346 => Buff::TerraFartMinecartRight,
749            347 => Buff::TerraFartMinecartLeft,
750            348 => Buff::WarTable,
751            349 => Buff::BlueChickenPet,
752            350 => Buff::ShadowCandle,
753            351 => Buff::Spiffo,
754            352 => Buff::CavelingGardener,
755            353 => Buff::Shimmer,
756            354 => Buff::DirtiestBlock,
757            355 => Buff::DeadCellsMushroomBoiMinion,
758            356 => Buff::DeadCellsSwarmBiter,
759            357 => Buff::CobWhipNPCDebuff,
760            358 => Buff::CorruptWhipNPCDebuff,
761            359 => Buff::CrimsonWhipNPCDebuff,
762            360 => Buff::MeteorWhipNPCDebuff,
763            361 => Buff::FlowerWhipNPCDebuff,
764            362 => Buff::EelWhipNPCDebuff,
765            363 => Buff::ConstellationWhipNPCDebuff,
766            364 => Buff::MoonLordWhipNPCDebuff,
767            365 => Buff::CobWhipPlayerBuff,
768            366 => Buff::DeadCellsPotionStation,
769            367 => Buff::FlowerWhipNPCDebuffProc,
770            368 => Buff::MoonLordWhipNPCDebuffProc,
771            369 => Buff::MeteorWhipNPCDebuffProc,
772            370 => Buff::VelociraptorMount,
773            371 => Buff::Pufferfish,
774            372 => Buff::AxeFairyPet,
775            373 => Buff::BoulderPet,
776            374 => Buff::RatMount,
777            375 => Buff::Hemorrhage,
778            376 => Buff::TorchGodPotion,
779            377 => Buff::BatMount,
780            378 => Buff::RollerSkatesMount,
781            379 => Buff::RollerSkatesGreenMount,
782            380 => Buff::RollerSkatesWhiteMount,
783            381 => Buff::RollerSkatesPinkMount,
784            382 => Buff::RainbowBoulderPet,
785            383 => Buff::Kite,
786            384 => Buff::PixieMount,
787            385 => Buff::CattivaMinion,
788            386 => Buff::FoxsparksMinion,
789            387 => Buff::ChilletPet,
790            388 => Buff::ChilletIgnisPet,
791            _ => return None,
792        })
793    }
794}
795
796#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)]
797pub struct BuffEffect {
798    pub buff: Buff,
799    pub time: Duration,
800}