Minor code clean up.

This commit is contained in:
Dorian 2016-07-16 13:51:50 -04:00
parent 0bdf4f126d
commit c57c01464d
1 changed files with 7 additions and 28 deletions

35
main.py
View File

@ -1,14 +1,10 @@
import collections import collections
import random
import math
from kivy import app, properties from kivy import app, properties
from kivy.uix import button, label from kivy.uix import label
from kivy.uix.floatlayout import FloatLayout from kivy.uix.floatlayout import FloatLayout
from kivy.graphics import Color, Ellipse, Line from kivy.graphics import Color, Ellipse, Line
from kivy.logger import Logger
import kivy.utils import kivy.utils
from kivy.vector import Vector
MapCoords = collections.namedtuple('MapCoords', ['row', 'col']) MapCoords = collections.namedtuple('MapCoords', ['row', 'col'])
@ -33,16 +29,15 @@ class StrategyGame(FloatLayout):
# Add overlay conditionally. # Add overlay conditionally.
if (row % 6 == 1 and col % 2 == 1) or (row % 6 == 4 and col % 2 == 0): if (row % 6 == 1 and col % 2 == 1) or (row % 6 == 4 and col % 2 == 0):
print('({}, {})'.format(row, col)) print('({}, {})'.format(row, col))
#radius = math.sqrt(hex_cell.width**2 + hex_cell.height**2) radius = 2 * hex_cell.height
radius = 2*hex_cell.height
solid_x = hex_cell.x - hex_cell.height*2 solid_x = hex_cell.x - hex_cell.height*2
solid_y = hex_cell.y - hex_cell.height*2 solid_y = hex_cell.y - hex_cell.height*2
solid_size = (4*hex_cell.height, 4*hex_cell.height) solid_size = (4*hex_cell.height, 4*hex_cell.height)
with hex_cell.canvas.after: with hex_cell.canvas.after:
Color(1,0,1,1) Color(1, 0, 1, 1)
hex_cell.ell = Line(circle=(hex_cell.x, hex_cell.y,radius, 0, 360, 6), width=2) hex_cell.ell = Line(circle=(hex_cell.x, hex_cell.y,radius, 0, 360, 6), width=2)
Color(*kivy.utils.get_random_color(alpha = .5)) Color(*kivy.utils.get_random_color(alpha=.5))
hex_cell.solid = Ellipse(pos = (solid_x, solid_y), size = solid_size, segments = 6 ) hex_cell.solid = Ellipse(pos=(solid_x, solid_y), size=solid_size, segments=6)
hex_cell.bind(pos=hex_cell.update_pos, size=hex_cell.update_pos) hex_cell.bind(pos=hex_cell.update_pos, size=hex_cell.update_pos)
@ -52,30 +47,14 @@ class HexMapCell(label.Label):
self.coords = MapCoords(row, col) self.coords = MapCoords(row, col)
def update_pos(self, instance, value): def update_pos(self, instance, value):
#radius = math.sqrt(self.width**2 + self.height**2) radius = 2 * self.height
radius = 2*self.height
solid_x = self.x - self.height*2 solid_x = self.x - self.height*2
solid_y = self.y - self.height*2 solid_y = self.y - self.height*2
solid_size = (4*self.height, 4*self.height) solid_size = (4*self.height, 4*self.height)
self.ell.circle = (self.x, self.y, radius, 0, 360, 6) self.ell.circle = (self.x, self.y, radius, 0, 360, 6)
self.solid.pos = (solid_x, solid_y) self.solid.pos = (solid_x, solid_y)
self.solid.size = solid_size self.solid.size = solid_size
class HexMapControlCell(button.Button):
def __init__(self, hex_bind=None, **kwargs):
super(HexMapControlCell, self).__init__(**kwargs)
self.hex_bind = hex_bind
self.background_color = random.random(), random.random(), random.random(), 1
self.bind(pos=self.reposition_control_cell, size=self.resize_control_cell)
self.text = '({}, {})'.format(self.hex_bind.coords.row, self.hex_bind.coords.col)
def reposition_control_cell(self, obj, value):
self.pos = self.hex_bind.pos
def resize_control_cell(self, obj, value):
self.height = self.hex_bind.height * 2
self.width = self.hex_bind.width * 2
class StrategyGameApp(app.App): class StrategyGameApp(app.App):
def build(self): def build(self):