Are you sure?
Do you want to delete “Rainy landscape” permanently? You will not be able to undo this action.
from random import random, seed from icons import Tree seed(999) # same random numbers every time # background Rectangle(color=['#999', '#cde']) Circle(x=50, y=80, width=500, height=70 ,color=['#abb', '#375', '#072']) # trees! treecolors = [ ['#454', '#030'], ['#464', '#230'], ['#564', '#040'], ] for i in range(30): tree = Tree(color=treecolors[int(random() * len(treecolors))]) tree.x = (62 * i - 10*random()) % 100 tree.y = 45 + 1.7 * i distance = 40 + i tree.width = 10 * distance / 70 tree.height = 14 * distance / 70 # rain drips = [] for i in range(40): drip = Rectangle(width=0.3, height=30, color=['#aab', '#ccd', '#aab']) drip.x = 1.25+2.5*i drip.y = -15 + 130 * random() drips.append(drip) # in order to loop nicely, we need to have many shorter animations for i in range(26): # short part of the animation with animation(duration = 0.15): for drip in drips: drip.y += 10 # loop nicely; add an extremely short animation to bring drops to the top with animation(duration = 0.000000000000000001): for drip in drips: if drip.y >= 115: drip.x = (drip.x + 50) % 100 # flip x position to add variation drip.y -= 130