hig[t_]:=If[0<t,t,0]
con[a_]:=If[0<a,a^2,0]
Animate[Graphics3D[{
{Opacity[0.5],RGBColor[0.8,0.9,1],Cylinder[{{0,0,hig[t]400/420+1},{0,0,1}},1/2]},
{Opacity[0.1],Cylinder[{{0,0,1},{0,0,2.2}},1/2]},
{Opacity[0.5],RGBColor[0.8,0.9,1],Cylinder[{{0,0,-hig[t]+(0.143989/0.15707)*0.2*con[a]-0.2},{0,0,-1.2}},1/2]},
{Opacity[0.1],Cylinder[{{0,0,0},{0,0,-1.2}},1/2]},{Opacity[0.4],Cone[{{0,0,1},{0,0,0.45}},1/2]},
{Opacity[0.5],RGBColor[0.8,0.9,1],
Cone[{{0,0,1-0.55 con[a]},{0,0,0.45}},1/2-con[a]/2]},
{Opacity[0.4],Cone[{{0,0,0},{0,0,0.55}},1/2]},
{Opacity[0.5],RGBColor[0.8,0.9,1],
Cone[{{0,0,0},{0,0,0}},0.55]},
{Opacity[If[a==1,0,0.4]],Tube[{{0,0,0.55},{0,0,-hig[t]+(0.143989/0.15707)*0.2*con[a]-0.2}},0.01]},
{Opacity[1],Brown,Cylinder[{{-0.3,-0.6,2.2},{-0.3,-0.6,-1.2}},1/10]},
{Opacity[1],Brown,Cylinder[{{0.6,0.3,2.2},{0.6,0.3,-1.2}},1/10]},
{Opacity[1],Brown,Cylinder[{{-0.5,0.5,2.2},{-0.5,0.5,-1.2}},1/10]},
{Opacity[1],Brown,Cylinder[{{0,0,2.4},{0,0,2.2}},0.9]},
{Opacity[1],Brown,Cylinder[{{0,0,-1.4},{0,0,-1.2}},0.9]}

},
Boxed->False,Lighting->"Neutral"],
{t,1,-20/420},{a,-20,1},DefaultDuration->420,AnimationRepetitions->1]