Animate[
x1=Cos[t]; y1=Sin[t];
gondola1={Orange,Disk[{x1,y1},0.2]};
win1r={White,Disk[{x1+0.01,y1+0.01},0.155,{0,Pi/2}]};
win1l={White,Disk[{x1-0.01,y1+0.01},0.155,{Pi/2,Pi}]};
door11={Orange,Rectangle[{x1-0.065,y1-0.15},{x1+0.065,y1+0.17}]};
door12=If[t>11.5 (Pi)/8&&t<12.5(Pi)/8,{White,Rectangle[{x1-0.05,y1-0.11},{x1+0.05,y1+0.15}]}];

x2=Cos[t+Pi/4]; y2=Sin[t+Pi/4];
gondola2={Cyan,Disk[{x2,y2},0.2]};
win2r={White,Disk[{x2+0.01,y2+0.01},0.155,{0,Pi/2}]};
win2l={White,Disk[{x2-0.01,y2+0.01},0.155,{Pi/2,Pi}]};
door21={Cyan,Rectangle[{x2-0.065,y2-0.15},{x2+0.065,y2+0.17}]};
door22=If[t>9.5 (Pi)/8&&t<10.5(Pi)/8,{White,Rectangle[{x2-0.05,y2-0.11},{x2+0.05,y2+0.15}]}];

x3=Cos[t+Pi/2]; y3=Sin[t+Pi/2];
gondola3={Red,Disk[{x3,y3},0.2]};
win3r={White,Disk[{x3+0.01,y3+0.01},0.155,{0,Pi/2}]};
win3l={White,Disk[{x3-0.01,y3+0.01},0.155,{Pi/2,Pi}]};
door31={Red,Rectangle[{x3-0.065,y3-0.15},{x3+0.065,y3+0.17}]};
door32=If[t>7.5 (Pi)/8&&t<8.5(Pi)/8,{White,Rectangle[{x3-0.05,y3-0.11},{x3+0.05,y3+0.15}]}];

x4=Cos[t+3 Pi/4]; y4=Sin[t+3 Pi/4];
gondola4={Purple,Disk[{x4,y4},0.2]};
win4r={White,Disk[{x4+0.01,y4+0.01},0.155,{0,Pi/2}]};
win4l={White,Disk[{x4-0.01,y4+0.01},0.155,{Pi/2,Pi}]};
door41={Purple,Rectangle[{x4-0.065,y4-0.15},{x4+0.065,y4+0.17}]};
door42=If[t>5.5 (Pi)/8&&t<6.5(Pi)/8,{White,Rectangle[{x4-0.05,y4-0.11},{x4+0.05,y4+0.15}]}];

x5=Cos[t+Pi]; y5=Sin[t+Pi];
gondola5={Pink,Disk[{x5,y5},0.2]};
win5r={White,Disk[{x5+0.01,y5+0.01},0.155,{0,Pi/2}]};
win5l={White,Disk[{x5-0.01,y5+0.01},0.155,{Pi/2,Pi}]};
door51={Pink,Rectangle[{x5-0.065,y5-0.15},{x5+0.065,y5+0.17}]};
door52=If[t>3.5 (Pi)/8&&t<4.5(Pi)/8,{White,Rectangle[{x5-0.05,y5-0.11},{x5+0.05,y5+0.15}]}];

x6=Cos[t+5 Pi/4]; y6=Sin[t+5 Pi/4];
gondola6={Green,Disk[{x6,y6},0.2]};
win6r={White,Disk[{x6+0.01,y6+0.01},0.155,{0,Pi/2}]};
win6l={White,Disk[{x6-0.01,y6+0.01},0.155,{Pi/2,Pi}]};
door61={Green,Rectangle[{x6-0.065,y6-0.15},{x6+0.065,y6+0.17}]};
door62=If[t>1.5 (Pi)/8&&t<2.5(Pi)/8,{White,Rectangle[{x6-0.05,y6-0.11},{x6+0.05,y6+0.15}]}];

x7=Cos[t+3 Pi/2]; y7=Sin[t+3 Pi/2];
gondola7={Magenta,Disk[{x7,y7},0.2]};
win7r={White,Disk[{x7+0.01,y7+0.01},0.155,{0,Pi/2}]};
win7l={White,Disk[{x7-0.01,y7+0.01},0.155,{Pi/2,Pi}]};
door71={Magenta,Rectangle[{x7-0.065,y7-0.15},{x7+0.065,y7+0.17}]};
door72=If[t>15.5 (Pi)/8||t<0.5(Pi)/8,{White,Rectangle[{x7-0.05,y7-0.11},{x7+0.05,y7+0.15}]}];

x8=Cos[t+7 Pi/4]; y8=Sin[t+7 Pi/4];
gondola8={Blue,Disk[{x8,y8},0.2]};
win8r={White,Disk[{x8+0.01,y8+0.01},0.155,{0,Pi/2}]};
win8l={White,Disk[{x8-0.01,y8+0.01},0.155,{Pi/2,Pi}]};
door81={Blue,Rectangle[{x8-0.065,y8-0.15},{x8+0.065,y8+0.17}]};
door82=If[t>13.5 (Pi)/8&&t<14.5(Pi)/8,{White,Rectangle[{x8-0.05,y8-0.11},{x8+0.05,y8+0.15}]}];



gx1=Cos[t]; gy1=Sin[t];gx2=Cos[t+Pi/4]; gy2=Sin[t+Pi/4];gx3=Cos[t+Pi/2]; gy3=Sin[t+Pi/2];gx4=Cos[t+3 Pi/4]; gy4=Sin[t+3 Pi/4];gx5=Cos[t+Pi]; gy5=Sin[t+Pi];gx6=Cos[t+5 Pi/4]; gy6=Sin[t+5 Pi/4];
gx7=Cos[t+3 Pi/2]; gy7=Sin[t+3 Pi/2];gx8=Cos[t+7 Pi/4]; gy8=Sin[t+7 Pi/4];

frame1=Line[{{{gx1,gy1+0.2},{gx5,gy5+0.2}},{{gx2,gy2+0.2},{gx6,gy6+0.2}},{{gx3,gy3+0.2},{gx7,gy7+0.2}},{{gx4,gy4+0.2},{gx8,gy8+0.2}}}];
ten=Disk[{0,0.2},0.05];
frame2=Line[{{0.3 gx1,0.3 gy1+0.2},{0.3 gx2,0.3 gy2+0.2},{0.3 gx3,0.3 gy3+0.2},{0.3 gx4,0.3gy4+0.2},{0.3 gx5,0.3 gy5+0.2},{0.3 gx6,0.3 gy6+0.2},{0.3 gx7,0.3 gy7+0.2},{0.3 gx8,0.3 gy8+0.2},{0.3 gx1,0.3 gy1+0.2}}];
frame3=Line[{{0.6 gx1,0.6 gy1+0.2},{0.6 gx2,0.6 gy2+0.2},{0.6 gx3,0.6 gy3+0.2},{0.6 gx4,0.6gy4+0.2},{0.6 gx5,0.6 gy5+0.2},{0.6 gx6,0.6 gy6+0.2},{0.6 gx7,0.6 gy7+0.2},{0.6 gx8,0.6 gy8+0.2},{0.6 gx1,0.6 gy1+0.2}}];
frame4=Line[{{0.9 gx1,0.9 gy1+0.2},{0.9 gx2,0.9 gy2+0.2},{0.9 gx3,0.9 gy3+0.2},{0.9 gx4,0.9gy4+0.2},{0.9 gx5,0.9 gy5+0.2},{0.9 gx6,0.9 gy6+0.2},{0.9 gx7,0.9 gy7+0.2},{0.9 gx8,0.9 gy8+0.2},{0.9 gx1,0.9 gy1+0.2}}];

frame5={Thick,Line[{{{0,0.2},{0.7,-1.2}},{{0,0.2},{-0.7,-1.2}}}]};


Graphics[{gondola1,win1r,win1l,door11,door12,gondola2,win2r,win2l,door21,door22,gondola3,win3r,win3l,door31,door32,gondola4,win4r,win4l,door41,door42,gondola5,win5r,win5l,door51,door52,gondola6,win6r,win6l,door61,door62,gondola7,win7r,win7l,door71,door72,gondola8,win8r,win8l,door81,door82,frame1,ten,frame2,frame3,frame4,frame5},{PlotRange->{{-1.5,1.5},{-1.5,1.5}},AspectRatio->1}],{t,0,2 Pi,Pi/250},AnimationRate->20,AnimationRunning->False]