summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFlorian Jung <flo@windfisch.org>2015-08-18 18:06:01 +0200
committerFlorian Jung <flo@windfisch.org>2015-08-18 18:06:01 +0200
commit9cc1886cca05124d84b5c02c44b5ffaf5ee4c6c0 (patch)
treee424e50875a408a23dd0183bee9244c13f791f32
parentbd662a876210513e729a863fd1d680905883d064 (diff)
parent1abc1581137fe968fb94f89810ac8563afbfd800 (diff)
Merge branch 'master' into pathfinding
-rw-r--r--gui.py44
1 files changed, 28 insertions, 16 deletions
diff --git a/gui.py b/gui.py
index 0293152..68aa48e 100644
--- a/gui.py
+++ b/gui.py
@@ -81,6 +81,25 @@ def draw_arc(pos, r, bounds, color, global_coords=True):
gfxdraw.arc(screen, pos[0], pos[1], r, int(bounds[0]*180/math.pi), int(bounds[1]*180/math.pi), color)
+def draw_text(pos, text, color, font_size=16, global_coords=True, draw_centered=False):
+ if global_coords:
+ pos = world_to_win_pt(pos, c.player.center)
+
+ output = None
+
+ if font_fallback:
+ font = pygame.font.SysFont(pygame.font.get_default_font(), font_size)
+ output = font.render(text, 1, color)
+ else:
+ font = pygame.freetype.SysFont(pygame.freetype.get_default_font(), font_size)
+ output = font.render(text, color)[0]
+
+ if draw_centered:
+ screen.blit(output, (pos[0] - (output.get_width()/2), pos[1] - (output.get_height()/2)))
+ else:
+ screen.blit(output, pos)
+ return output
+
def update():
pygame.display.update()
@@ -121,16 +140,6 @@ def generate_virus(spikes, spike_length, radius, global_coords):
points.append(t);
return points
-def draw_text(text, color, font_size):
- if font_fallback:
- font = pygame.font.SysFont(pygame.font.get_default_font(), font_size)
- output = font.render(text, 1, color)
- return output
- else:
- font = pygame.freetype.SysFont(pygame.freetype.get_default_font(), font_size)
- output = font.render(text, color)
- return output[0]
-
def draw_cell(cell):
cx,cy = world_to_win_pt(cell.pos,c.player.center)
radius = world_to_win_length(cell.size)
@@ -159,11 +168,13 @@ def draw_cell(cell):
font_size = 16
- surface = draw_text(cell.name, (0, 0, 0), font_size)
- screen.blit(surface, (cx - (surface.get_width()/2), cy + radius + 5))
+ draw_text((cx, cy + radius + 10), cell.name, (0, 0, 0), font_size, False, True)
+ # surface = draw_text(cell.name, (0, 0, 0), font_size)
+ # screen.blit(surface, (cx - (surface.get_width()/2), cy + radius + 5))
- surface = draw_text(str(int(cell.mass)), (255, 255, 255), font_size)
- screen.blit(surface, (cx - (surface.get_width()/2), cy - (surface.get_height()/2)))
+ draw_text((cx, cy), str(int(cell.mass))+"/"+str(int(cell.size)), (255, 255, 255), font_size, False, True)
+ # surface = draw_text(str(int(cell.mass)), (255, 255, 255), font_size)
+ # screen.blit(surface, (cx - (surface.get_width()/2), cy - (surface.get_height()/2)))
else:
gfxdraw.aacircle(screen, cx, cy, radius, color)
gfxdraw.filled_circle(screen, cx, cy, radius, color)
@@ -175,8 +186,9 @@ def draw_leaderboard():
font_size = 16
for i, s in zip(range(1, len(leaderboard)+1), leaderboard):
- surface = draw_text((str(i) + ": " +s), (0, 0, 0), font_size)
- screen.blit(surface, (5, next_y))
+ surface = draw_text((5, next_y), (str(i) + ": " +s), (0, 0, 0), font_size, False)
+ # surface = draw_text((str(i) + ": " +s), (0, 0, 0), font_size)
+ # screen.blit(surface, (5, next_y))
next_y += surface.get_height()+5
def draw_world_borders():