Compare commits

...

8 Commits

Author SHA1 Message Date
  bertieb 373529565b (Oct 2021) Update for BL Cricket 96 3 years ago
  bertieb 695a318777 (Sep 2021) Subs and Teams for Worms Armageddon 3 years ago
  bertieb 70b89273f6 (Sep 2021) Add team randomisation + name-specifics 3 years ago
  bertieb 802228417f Teamicker should respect rows and cols specified 3 years ago
  bertieb b83eb4a9b7 (August 2021) Update to Madden 93 3 years ago
  bertieb f9d8c18d8d (June 2021) Update subs+teams, no split on space 3 years ago
  bertieb 7a9f1e9259 Update to May 2021 Sub Crown - NBA 98 3 years ago
  bertieb 5aa5170d10 Update for March 2021 Sub Crown (Rugby WC95) 3 years ago
3 changed files with 74 additions and 56 deletions
Split View
  1. +5
    -5
      subs.txt
  2. +57
    -25
      teampicker.py
  3. +12
    -26
      teams.txt

+ 5
- 5
subs.txt View File

@@ -1,8 +1,8 @@
costello_
ksyme99
hil42
rarestmonkey
costello_
pandacat42
mattgamerguy666
meblu42
burgiuk
ksyme99
idiotictendencies
maothecat
burgiuk

+ 57
- 25
teampicker.py View File

@@ -4,7 +4,7 @@
#
# Two files provided:
# - subs.txt -- 8 subscribers
# - teams.txt -- 26 teams
# - teams.txt -- 30 teams
#
# Pseudocode:
# Split screen in 1:3
@@ -21,7 +21,7 @@ import random
import pygame

pygame.init()
random.seed("BERTIE BEEF BAGGIO")
random.seed("bertieb")

HIGHLIGHTEVENT = pygame.USEREVENT + 1 # user specified event
CLEAREVENT = pygame.USEREVENT + 2 # user specified event
@@ -31,8 +31,8 @@ SIZE = WIDTH, HEIGHT = 1920, 1080

BGIMG = pygame.image.load("sub_crown_bg_2.png")

FONT = pygame.font.SysFont("Fetamont", 50)
SUBFONTHEIGHT = 35
FONT = pygame.font.SysFont("Fetamont", 65)
SUBFONTHEIGHT = 45
SUBFONT = pygame.font.SysFont("Fetamont", SUBFONTHEIGHT)
OFFWHITE = (224, 224, 224)
HIGHLIGHT = (255, 209, 0)
@@ -41,22 +41,24 @@ RED = (186, 20, 31)
PURPLE = (121, 35, 158)

screen = pygame.display.set_mode(SIZE)
pygame.display.set_caption("Sub Crown Nov 2020 Team Picker")
pygame.display.set_caption("Sub Crown October 2021 Team Picker")

# Set up team text positioning references
#
# 26 teams so 3 cols, 9 rows

COLSTART = int(WIDTH/3)
COLWIDTH = int((WIDTH-COLSTART)/3)
TEAMSFILE = "teams.txt"

ROWSTART = int(HEIGHT/12)
ROWHEIGHT = int((HEIGHT-ROWSTART)/10)
TEAMNUMCOLS = 2
TEAMNUMROWS = 12

TEAMSFILE = "teams.txt"
# COLSTART = int(WIDTH/TEAMNUMCOLS)
COLSTART = int(WIDTH/(TEAMNUMCOLS+1))
COLWIDTH = int((WIDTH-COLSTART)/TEAMNUMCOLS)

TEAMNUMCOLS = 3
TEAMNUMROWS = 9
ROWSTART = int(HEIGHT/(TEAMNUMROWS+2))
# ROWHEIGHT = int((HEIGHT-ROWSTART)/TEAMNUMROWS)
ROWHEIGHT = int((HEIGHT-ROWSTART)/(TEAMNUMROWS-5))

TEAMCOLS = []
TEAMROWS = []
@@ -72,7 +74,7 @@ for i in range(TEAMNUMROWS):
SUBSFILE = "subs.txt"
SUBS = []

SUBNUMROWS = 8
SUBNUMROWS = 9
SUBROWHEIGHT = int((HEIGHT-ROWSTART)/9)
SUBROWS = []

@@ -138,6 +140,22 @@ class Highlighter(object):
if self.iterations >= self.max:
# Choosing time
self.lastchoice = -1
# # ** Name-specific choices! ** # #
# for tsub in SUBS:
# if tsub.team == "":
# choosing_sub = tsub
# break
# for j in range(len(TEAMS)):
# if "amy" not in choosing_sub.sub:
# if TEAMS[j].team.lower(
# ).startswith(choosing_sub.sub[0].lower()):
# TEAMS[j].choose()
# break
# else:
# if TEAMS[j].team.lower().startswith("a"):
# TEAMS[j].choose()
# break
# # End Name-specific stuff # #
TEAMS[-1].choose()
pygame.time.set_timer(HIGHLIGHTEVENT, 0) # Disable highlight
pygame.time.set_timer(CHOOSEEVENT, 5000, True) # make choice
@@ -152,19 +170,27 @@ def draw_text(text, font, text_col, x, y):
screen.blit(img, (x, y))


def setup_team_board():
def setup_team_board(randomise_teams=False):
"""Grab teams from text file and set their positions"""
teamlist = []

with open(TEAMSFILE, "r") as fh:
for row in range(TEAMNUMROWS):
for col in range(TEAMNUMCOLS):
name = fh.readline().strip()
if name == "":
continue
print("Adding {} at {},{}".format(name,
TEAMCOLS[col],
TEAMROWS[row]))
TEAMS.append(Team(name,
TEAMROWS[row], TEAMCOLS[col]))
teams = fh.readlines()
teamlist = [team.rstrip() for team in teams if team != ""]

if randomise_teams:
random.shuffle(teamlist)

for row in range(TEAMNUMROWS):
for col in range(TEAMNUMCOLS):
if len(teamlist) == 0:
continue
name = teamlist.pop(0)
print("Adding {} at {},{}".format(name,
TEAMCOLS[col],
TEAMROWS[row]))
TEAMS.append(Team(name,
TEAMROWS[row], TEAMCOLS[col]))


def setup_subs():
@@ -182,7 +208,7 @@ for line in open(SUBSFILE, "r"):
print(SUBS)

random.shuffle(SUBS)
setup_team_board()
setup_team_board(randomise_teams=True)
random.shuffle(TEAMS)
setup_subs()

@@ -221,6 +247,12 @@ while True:
elif event.type == CHOOSEEVENT:
for sub in SUBS:
if sub.team == "":
# # Name-specific again # #
# for k in range(len(TEAMS)):
# if TEAMS[k].colour == RED:
# sub.team = TEAMS.pop(k).team
# break
# # End name-specific # #
sub.team = TEAMS.pop().team
pygame.time.set_timer(CLEAREVENT, 100, True)
break


+ 12
- 26
teams.txt View File

@@ -1,26 +1,12 @@
Anaheim
Boston
Buffalo
Calgary
Chicago
Dallas
Detroit
Edmonton
Florida
Hartford
Los Angeles
Montreal
New Jersey
NY Islanders
NY Rangers
Ottawa
Philadelphia
Pittsburgh
Quebec
San Jose
St Louis
Tampa Bay
Toronto
Vancouver
Washington
Winnipeg
Australia
England
Holland
India
Kenya
New Zealand
Pakistan
South Africa
Sri Lanka
UAE
Zimbabwe
West Indies

Loading…
Cancel
Save