1use crate::fields::slot::Slot;
2use crate::fields::general::Position;
3use minecraft_net_proc::{Field, VarIntEnum};
4
5VarIntEnum!(Particle, {
6 AngryVillager,
7 Block: VarInt,
8 BlockMarker: VarInt,
9 Bubble,
10 Cloud,
11 Crit,
12 DamageIndicator,
13 DragonBreath,
14 DrippingLava,
15 FallingLava,
16 LandingLava,
17 DrippingWater,
18 FallingWater,
19 Dust: Dust,
20 DustColorTransition: DustColorTransition,
21 Effect,
22 ElderGuardian,
23 EnchantedHit,
24 Enchant,
25 EndRod,
26 EntityEffect: Int,
27 ExplosionEmitter,
28 Explosion,
29 Gust,
30 SmallGust,
31 GustEmitterLarge,
32 GustEmitterSmall,
33 SonicBoom,
34 FallingDust: VarInt,
35 Firework,
36 Fishing,
37 Flame,
38 Infested,
39 CherryLeaves,
40 PaleOakLeaves,
41 SculkSoul,
42 SculkCharge: Float,
43 SculkChargePop,
44 SoulFireFlame,
45 Soul,
46 Flash,
47 HappyVillager,
48 Composter,
49 Heart,
50 InstantEffect,
51 Item: Slot,
52 Vibration: Vibration,
53 Trail: Trail,
54 ItemSlime,
55 ItemCobweb,
56 ItemSnowball,
57 LargeSmoke,
58 Lava,
59 Mycelium,
60 Note,
61 Poof,
62 Portal,
63 Rain,
64 Smoke,
65 WhiteSmoke,
66 Sneeze,
67 Spit,
68 SquidInk,
69 SweeepAttack,
70 TotemOfUndying,
71 Underwater,
72 Splash,
73 Witch,
74 BubblePop,
75 CurrentDown,
76 BubbleColumnUp,
77 Nautilus,
78 Dolphin,
79 CampfireCosySmoke,
80 CampfireSignalSmoke,
81 DrippingHoney,
82 FallingHoney,
83 LandingHoney,
84 FallingNectar,
85 FallingSporeBlossom,
86 Ash,
87 CrimsonSpore,
88 WarpedSpore,
89 SporeBlossomAir,
90 DrippingObsidianTear,
91 FallingObsidianTear,
92 LandingObsidianTear,
93 ReversePortal,
94 WhiteAsh,
95 SmallFlame,
96 Snowflake,
97 DrippingDripstoneLava,
98 FallingDripstoneLava,
99 DrippingDripstoneWater,
100 FallingDripstoneWater,
101 GlowSquidInk,
102 Glow,
103 WaxOn,
104 WaxOff,
105 ElectricSpark,
106 Scrape,
107 Shriek: VarInt,
108 EggCrack,
109 DustPlume,
110 TrialSpawnerDetection,
111 TrialSpawnerDetectionOminous,
112 VaultConnection,
113 DustPillar,
114 OminousSpawning,
115 RaidOmen,
116 TrialOmen,
117 BlockCrumble: VarInt,
118});
119Field!(Dust, {
120 color: Int,
121 scale: Float,
122});
123Field!(DustColorTransition, {
124 from_color: Int,
125 to_color: Int,
126 scale: Float,
127});
128Field!(Vibration, {
129 position_source_type: VarInt,
130 block_position: Position,
131 entity_id: VarInt,
132 entity_eye_height: Float,
133 ticks: VarInt,
134});
135Field!(Trail, {
136 x: Double,
137 y: Double,
138 z: Double,
139 color: Int,
140 duration: VarInt,
141});