restart; with(plots):with(plottools):
Grass:=display(polygon([[-2.5,3.75],[11,3.75], [11,0], [-2.5,0], [-2.5,3.75]], color=green),scaling=constrained):
lightning:=display(polygon([[1,7],[1.5, 6],[1,6], [1.5,5], [1,5], [2,3], [1.75, 4.5],[2.25, 4.5], [2,5.5], [2.5,5.5], [2,7], [1,7]], color=yellow),scaling=constrained):
Sky:=display(polygon([[-2.5,3.75],[11,3.75], [11,7], [-2.5,7], [-2.5,3.75]], color="DarkSlateGrey"),scaling=constrained):
background:=display(Sky, Grass):
TreeLeavesMain:=display(disk([3.5,4], 1, color="DarkGreen"), scaling=constrained):
treeleaves1:=display(ellipse([2.5,3.5], 1, .5, filled=true, color="DarkGreen"),scaling=constrained):
treeleaves2:=display(ellipse([4.5,3.5], 1, .5, filled=true, color="DarkGreen"),scaling=constrained):
treetrunk:=display(polygon([[3.25,2.75],[3.25,1],[3.75,1],[3.75,2.75],[4.75,3.5],[2.25,3.5]],color="Chocolate")):
Tree:=display((TreeLeavesMain, treetrunk,treeleaves1, treeleaves2),scaling=constrained):
FrogBody:=display(disk([6,1.25], .25, color="DarkSeaGreen"), scaling=constrained):
FrogFoot:=display(polygon([[6.25,1.25],[6.25,1],[5.5,1],[5.65,1.1]], color="DarkSeaGreen"), scaling=constrained):
FrogEye:=display(disk([5.85, 1.45], .05, color=black)):
FrogSmile:=display(arc([5.75, 1.4], .15, -Pi/2 .. -Pi/6)):
Frog:=display(FrogEye,FrogSmile, FrogBody, FrogFoot):
BoomWords:=textplot([5, 3.5, "BOOM!", font = [TIMES, ROMAN, 20]]):
BoomBack:=display(polygon([[-2,7],[-2,0],[11,0],[11,7]], color=red, scaling=constrained)):
Boom:=display((BoomWords, BoomBack), scaling=constrained):
SplatWords:=textplot([5, 3.5, "Splat!", font = [TIMES, ROMAN, 20]]):
SplatBack:=display(polygon([[-2,7],[-2,0],[11,0],[11,7]], color="DarkSeaGreen")):
Splat:=display((SplatWords, SplatBack),scaling=constrained):
DeadTree:=display(polygon([[3.25,2.75],[3.25,1],[3.75,1],[3.75,2.75],[4.75,3.5],[3.9,3.5],[3.8,4.8],[3.5,3.3],[2.7,4.25],[3.25,3.25],[2.75,3.5],[2.25,3.5]],color=brown)):
lightning2 :=display(scale(lightning, .5, 1)):
s1:=display(Tree,Frog, background):
s2:=display(Tree,translate(Frog, 0,.5), background):
s3:=display(Tree,translate(Frog, .5,0), background):
s4:=display(translate(lightning2, 1,0), Tree,translate(Frog, .5,0), background):
s5:=display(lightning, Tree,translate(Frog, .5,0), background):
s6:=display(DeadTree,translate(Frog, .5,0), background):
s7:=display(rotate(DeadTree, -Pi/12,[3.75,1]),translate(Frog, .5,0), background):
s8:=display(rotate(DeadTree, -Pi/6,[3.75,1]),translate(Frog, .5,0), background):
s9:=display(rotate(DeadTree, -Pi/4,[3.75,1]),translate(Frog, .5,0), background):
s10:=display(rotate(DeadTree, -Pi/3,[3.75,1]),translate(Frog, .5,0), background):
s11:=display(rotate(DeadTree, -5*Pi/12,[3.75,1]),translate(Frog, .5,0), background):
s0:=display(Boom):
s12:=display(rotate(DeadTree, -Pi/2,[3.75,1]), background):
s13:=display(Splat):
LightningFinal:=display([s1,s1,s1,s2,s3,s4,s4,s5,s5,s4,s4,s6,s0,s0,s0,s0,s6,s7,s6,s7,s8,s9,s10,s11,s12,s13,s13,s13], insequence=true, axes=none, scaling=constrained):
LightningFinal;
#fps=6