+spawnfunc(func_snow)
+{
+ this.dest = this.velocity;
+ this.velocity = '0 0 0';
+ if (!this.dest)
+ this.dest = '0 0 -300';
+ this.angles = '0 0 0';
+ this.movetype = MOVETYPE_NONE;
+ this.solid = SOLID_NOT;
+ SetBrushEntityModel(this);
+ if (!this.cnt)
+ this.cnt = 12;
+ if (!this.count)
+ this.count = 2000;
+ this.count = 0.01 * this.count * (this.size_x / 1024) * (this.size_y / 1024);
+ if (this.count < 1)
+ this.count = 1;
+ if(this.count > 65535)
+ this.count = 65535;
+
+ this.state = 0; // 1 is rain, 0 is snow
+ this.Version = 1;
+
+ Net_LinkEntity(this, false, 0, rainsnow_SendEntity);
+}
+#elif defined(CSQC)
+void Draw_Rain(entity this)
+{
+ te_particlerain(this.origin + this.mins, this.origin + this.maxs, this.velocity, floor(this.count * drawframetime + random()), this.glow_color);
+}
+
+void Draw_Snow(entity this)
+{
+ te_particlesnow(this.origin + this.mins, this.origin + this.maxs, this.velocity, floor(this.count * drawframetime + random()), this.glow_color);
+}
+
+NET_HANDLE(ENT_CLIENT_RAINSNOW, bool isnew)