def __init__(self, filename): self.bg_color = [0, 0, 0] self.player = None self.event = {} self.filename = filename if CONST.debug: Editor.__init__(self) GUI.__init__(self)
def loop(self, screen): img_manager.draw_rect(screen, Vector2(), Rect(Vector2(),engine.get_screen_size()),self.bg_color) snd_manager.update_music_status() """ if CONST.render == 'kivy': for layer in self.objects: for img in layer: #set img pos outside the screen if isinstance(img, AnimImage): for kivy_img in img.anim.img_indexes: kivy_img.x = -engine.get_screen_size().x kivy_img.y = -engine.get_screen_size().y """ '''Event If mouse_click on element, execute its event, of not null''' if self.show_mouse: show_mouse() mouse_pos, pressed = get_mouse() if pressed[0] and not self.click: event = None self.click = True for layer in self.objects: for image in layer: if image.check_click(mouse_pos, self.screen_pos): event = image.event if event: event.execute() elif not pressed[0]: self.click = False if not self.lock: physics_manager.loop() '''Show images''' if self.player and self.player.anim: self.screen_pos = self.player.anim.get_screen_pos() remove_image = [] for i, layer in enumerate(self.objects): if i == 2: NetworkGamestate.loop(self, screen) for j, img in enumerate(layer): img.loop(screen, self.screen_pos) if img.remove: remove_image.append(img) for r in remove_image: self.objects[i].remove(r) '''GUI''' GUI.loop(self, screen) '''Editor''' if CONST.debug: Editor.loop(self, screen, self.screen_pos)