def new_query(x, y): global Query_list global Conditional_list global flags xshift = 200 if x >= 315 and x <= 495 and y >= -240 and y <= -215: draw_box(Turtle(), "white", "", 315, -220, 180, "white") draw_box(Turtle(), "white", "", 410, -250, 120, "white") refresh(Query_list + Conditional_list) draw_box( Turtle(), "lightgreen", "Generated Query is ", -300 - xshift, -220, 760) draw_box( Turtle(), "lightgreen", "Answer = ", -300 - xshift, -250, 760) clear_mar_cond() clear_mar_quer() for i in flags: flags[i] = 0 del Query_list[:] del Conditional_list[:] screen = turtle.Screen() screen.onclick(take_input) return if x >= 410 and x <= 530 and y >= -270 and y <= -245: turtle.bye()
def take_input(x, y): screen = turtle.Screen() screen.onclick(None) global var_list global Query_list global Conditional_list types = ["q", "c"] # print Query_list,Conditional_list if x >= 270 and x <= 390 and y >= -270 and y <= -245: draw_box(Turtle(), "red", "Process is going on", 220, 320, 240) # print "generated" if len(Query_list) == 0: print "invalid query--'atleast one query_variable needs to be selected'" turtle.bye() # screen=turtle.Screen() # screen.onclick(take_input) return else: write_gen_query(Query_list, Conditional_list) write_markov_query(Query_list) write_conditional_query(Conditional_list) exp = createExpression(Query_list, Conditional_list) ans = computeProbability(exp) draw_box(Turtle(), "white", "", 220, 320, 240, "white") draw_box(Turtle(), "red", "New Query", 315, -220, 180) draw_box(Turtle(), "red", "Exit", 410, -250, 120) screen = turtle.Screen() screen.onclick(new_query) return for t in types: for v in var_list: if (len(Query_list) >= 10 and t == 'q') or (len(Conditional_list) >= 10 and t == 'c'): continue if check_fill(x, y, v, t) == True: if t == 'q': Query_list.append(v) if t == 'c': Conditional_list.append(v) screen = turtle.Screen() screen.onclick(take_input)
def gui(self, screen): if self.health <= 0: gui.draw_big_text(screen, "YOU DIED! :(", (198, 298), "white") gui.draw_big_text(screen, "YOU DIED! :(", (200, 300), "black") return gui.draw_text(screen, "press escape", (300, 400)) gui.draw_box(screen, (20, 20, 20+max(min(self.hunger, 100), 0)*2, 50), "blue") gui.draw_box(screen, (screen.get_width()-(20+max(min(self.health, 100), 0)*2), 20, max(min(self.health, 100), 0)*2, 50), "green") if self.upgrade_attack > 0: if gui.Button(screen, "upgrade_attack", "a", (300, 20, 50, 50), draw=False): if self.menu: self.menu = None else: self.menu = MENU_ATTACK gui.draw_image(screen, resources.attack_icon, (300, 20)) if self.upgrade_utility > 0: if gui.Button(screen, "upgrade_utility", "u", (360, 20, 50, 50), draw=False): if self.menu: self.menu = None else: self.menu = MENU_UTILITY gui.draw_image(screen, resources.utility_icon, (360, 20)) if self.upgrade_movement > 0: if gui.Button(screen, "upgrade_movement", "m", (420, 20, 50, 50), draw=False): if self.menu: self.menu = None else: self.menu = MENU_MOVEMENT gui.draw_image(screen, resources.movement_icon, (420, 20)) if self.menu == MENU_ATTACK: selection = gui.Menu(screen, "upgrade_attack", "evolve", ["ranged", "melee"], (300, 80, 170, 180)) if selection == 1: if self.ranged_damage < 50: self.ranged_damage += 10 self.game.send_message("more ranged damage!") else: if self.ranged_attack_speed > self.minattackspeed: self.ranged_attack_speed -= .1 self.game.send_message("more ranged attack speed!") self.upgrade_attack -= 1 self.grow(self.growth) self.menu = None if selection == 2: if self.melee_damage < 60: self.melee_damage += 10 self.game.send_message("more melee damage!") else: if self.melee_damage_speed > self.minattackspeed-.1: self.melee_damage_speed -= .1 self.game.send_message("more melee attack speed!") self.upgrade_attack -= 1 self.grow(self.growth) self.menu = None if self.menu == MENU_UTILITY: selection = gui.Menu(screen, "upgrade_utility", "evolve", ["health"], (300, 80, 170, 120)) if selection == 1: self.health += 10 self.maxhealth += 10 self.game.send_message("more health!") self.upgrade_utility -= 1 self.grow(self.growth) self.menu = None if self.menu == MENU_MOVEMENT: selection = gui.Menu(screen, "upgrade_movement", "evolve", ["jumping", "running"], (300, 80, 170, 180)) if selection == 1: if self.maxjumps == 1: self.jumpheight *= 2 self.maxjumps += 1 self.game.send_message("double jumps!") elif self.maxjumps == 2: self.maxjumps = 100000 self.game.send_message("infinite jumps!") else: self.jumpheight += 10 self.airspeed += 30 self.game.send_message("better flying!") self.upgrade_movement -= 1 self.grow(self.growth) self.menu = None if selection == 2: self.speed += 50 self.game.send_message("faster running!") self.upgrade_movement -= 1 self.grow(self.growth) self.menu = None if selection == 3: self.swimspeed += 50 self.upgrade_movement -= 1 self.grow(self.growth) self.menu = None
def step(percent, off=(0, 0)): x, y = [a + b * percent for a, b in zip(pos, Δ)] w, h = [(l * (1 - percent)) for l in size] draw_box((x, y), (w, h))
def step(percent, off=(0, 0)): x, y = [a - b * percent for a, b in zip(start, Δ)] w, h = [(l * percent) for l in size] draw_box((x, y), (w, h))
def step(percent, off=(0, 0)): x = (x2 + Δx * percent) if not vert else x2 y = (y2 + Δy * percent) if vert else y2 draw_box((x, y), size)