import sys, getopt, random from config import PLAY_WIDTH,PLAY_HEIGHT,home_amount from sprites.cell import CELL_SIZE from sprites.grass import Grass from sprites.house import House from sprites.landfill import Landfill from sprites.garbage_collector import Garbage_collector def generate_rand_coordinates(max_x, max_y): return (random.randint(0, max_x), random.randint(0, (max_y))) ##GENERATE GRASS################################################################## def generate_grass( all_sprites ): grass = [] for k in range(0,(PLAY_WIDTH//CELL_SIZE)*(PLAY_HEIGHT//CELL_SIZE)): x,y = (int(k%(PLAY_WIDTH//CELL_SIZE)), int(k/(PLAY_WIDTH//CELL_SIZE))) grass.append( Grass(x,y) ) for item in grass: all_sprites.add(item) ################################################################################## ##GENERATE HOUSES################################################################# def generate_houses( all_sprites, obstacles_coords ): houses = [] home_counter = home_amount while( home_counter != 0 ): x,y = generate_rand_coordinates((PLAY_WIDTH//CELL_SIZE)-1,(PLAY_HEIGHT//CELL_SIZE)-1) if( (x,y) not in obstacles_coords ): houses.append( House(x,y, 10, 10, 10) ) obstacles_coords.append((x,y)) home_counter = home_counter - 1 for item in houses: all_sprites.add(item) ################################################################################## ##GENERATE LANDFILLS############################################################## def generate_landfills( all_sprites, obstacles_coords ): landfills = [] landfill_counter = 3 while( landfill_counter != 0): x,y = generate_rand_coordinates((PLAY_WIDTH//CELL_SIZE)-1,(PLAY_HEIGHT//CELL_SIZE)-1) if( (x,y) not in obstacles_coords ): landfills.append( Landfill(x,y, landfill_counter-1) ) obstacles_coords.append((x,y)) landfill_counter = landfill_counter - 1 for item in landfills: all_sprites.add(item) ################################################################################## ##GENERATE GARBAGE COLLECTOR###################################################### def generate_garbage_collector( all_sprites, obstacles_coords ): while( True ): x,y = generate_rand_coordinates((PLAY_WIDTH//CELL_SIZE)-1,(PLAY_HEIGHT//CELL_SIZE)-1) if( (x,y) not in obstacles_coords ): gc = Garbage_collector(x,y) break all_sprites.add(gc) return gc ##################################################################################