Михаил Капелько 4 months ago
parent
commit
430b918a99
5 changed files with 24 additions and 4 deletions
  1. +2
    -0
      v5/desktop.py
  2. +2
    -0
      v5/desktop_Platform.py
  3. +6
    -4
      v5/desktop_Window.py
  4. +12
    -0
      v5/desktop_aux.py
  5. +2
    -0
      v5/main-gui.py

+ 2
- 0
v5/desktop.py View File

@@ -48,3 +48,5 @@ def desktop_createSelectedTiles(p):
tile.top = pos[1]
# Invisible by default.
tile.visible = False
#}
#}

+ 2
- 0
v5/desktop_Platform.py View File

@@ -3,7 +3,9 @@ import arcade
class desktop_Platform:
def __init__(self):
self.c = None
self.ctrl = None
self.deselectedTiles = []
self.mousePosition = []
self.selectedTiles = []
self.sprites = arcade.SpriteList()
self.textures = []

+ 6
- 4
v5/desktop_Window.py View File

@@ -1,4 +1,5 @@
import arcade
from desktop_aux import *

class desktop_Window(arcade.Window):
def __init__(self, p):
@@ -16,10 +17,11 @@ class desktop_Window(arcade.Window):
self.p.sprites.draw()

def on_mouse_press(self, x, y, button, key_modifiers):
print("click", x, y)
sprites = arcade.get_sprites_at_point([x, y], self.p.sprites)
id = sprites[0].guid
print("selected id: ", id)
id = desktop_aux_tileIdAt(self.p, x, y)
if (
id != None
):
self.p.ctrl.set("selectedId", id)

def on_update(self, delta):
self.p.sprites.update_animation()

+ 12
- 0
v5/desktop_aux.py View File

@@ -0,0 +1,12 @@
import arcade

# Find tile id at the specified location
def desktop_aux_tileIdAt(p, x, y):
sprites = arcade.get_sprites_at_point([x, y], p.sprites)
if (
len(sprites) != 0
):
return sprites[0].guid
#}
return None
#}

+ 2
- 0
v5/main-gui.py View File

@@ -81,6 +81,8 @@ ctrl.registerCallback(printOutput)
ctrl.registerFieldCallback("exit", lambda c: sys.exit(0))

p = desktop_Platform()
# Keep copy of ctrl in platform, too.
p.ctrl = ctrl

# Copy context to platform.
def copyContext(c):


Loading…
Cancel
Save