Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import random
- import json
- class Player():
- def __init__(self, *args):
- pass
- class Teams():
- # color - tuple, wins - int, losses - int
- def __init__(self, teamname="unknown", wins=0, losses=0, team1player="unknown", team2player="unknown", colour=(255,255,255)):
- #above I have created all the attributes of teams
- self.teamname = teamname #sets teamname
- self.team1composition = {
- 'point guard' : [],
- 'shooting guard': [],
- 'small forward': [],
- 'power forward': [],
- 'centre': []
- }
- self.team2composition = {
- 'point guard': [],
- 'shooting guard': [],
- 'small forward': [],
- 'power forward': [],
- 'centre': []
- }
- self.wins = wins #number of wins
- self.losses = losses #number of losses
- self.team1player = team1player #holds a player and can be used to create players I have made this here so that the players are a part of the team
- self.team2player = team2player
- self.colour = colour #holds the rgb colour specific to the team
- # predefined teams
- self.all_teams = {
- "CAVS": {
- "name": "Cleveland Cavaliers",
- "color": (134, 0, 56),
- "composition": {
- 'point guard': ['Jose Calderon'],
- 'shooting guard': ['J.R Smith'],
- 'small forward': ['LeBron James'],
- 'power forward': ['Jae Crowder'],
- 'centre': ['Kevin Love'],
- },
- },
- "GSW": {
- "name": "Golden State Warriors",
- "color": (0, 107, 182),
- "composition": {
- 'point guard': [],
- 'shooting guard': [],
- 'small forward': [],
- 'power forward': [],
- 'centre': []
- },
- },
- }
- # you can use module `json` to save in file and/or read from file
- def save_data(self):
- with open("teams.json", "w") as f: # "w" = write
- json.dump(self.all_teams, f) # save
- def read_data(self):
- with open("teams.json") as f: # "" = read
- self.all_teams = json.load(f) # load
- print(self.all_teams)
- def startTeam(self):
- while True:
- Team1Name = input("Please select a team // GSW or CAVS: ")
- if Team1Name.upper() == "GSW":
- # get data from predefined teams
- Team1Name = self.all_teams["GSW"]["name"]
- Team1Colour = self.all_teams["GSW"]["color"] #rgb colour for GSW yellow
- self.team1composition = self.all_teams["GSW"]["composition"]
- break # exit while loop
- elif Team1Name.upper() == "CAVS":
- # get data from predefined teams
- Team1Name = self.all_teams["CAVS"]["name"]
- Team1Colour = self.all_teams["CAVS"]["color"] #rgb colour for GSW yellow
- self.team1composition = self.all_teams["CAVS"]["composition"]
- break # exit while loop
- print("*** wrong team, try again ***")
- while True:
- Team2Name = input("Please select an opposing team // GSW or CAVS: ")
- if Team2Name.upper() == "GSW":
- # get data from predefined teams
- Team2Name = self.all_teams["GSW"]["name"]
- Team2Colour = self.all_teams["GSW"]["color"] #rgb colour for GSW yellow
- self.team2composition = self.all_teams["GSW"]["composition"]
- break
- elif Team2Name.upper() == "CAVS":
- # get data from predefined teams
- Team2Name = self.all_teams["CAVS"]["name"]
- Team2Colour = self.all_teams["CAVS"]["color"] #rgb colour for GSW yellow
- self.team2composition = self.all_teams["CAVS"]["composition"]
- break
- print("*** wrong team, try again ***")
- print('--- TEAM 1 ---')
- self.team1players = []
- for position , name in self.team1composition.items():
- print(position, name)
- self.team1players.append(Player(name, 15, random.randint(0,470), random.randint(0,500), Team1Colour, 0, Team1Name, 0.01, 30))
- print('--- TEAM 2 ---')
- self.team2players = []#
- for position, name in self.team2composition.items():
- print(position , name)
- self.team2players.append(Player(name, 15, random.randint(470,940), random.randint(0,500), Team2Colour, 0, Team2Name, 0.01, 30))
- #----------------------------------------------------------------------
- t = Teams()
- t.startTeam()
- print('- save predefined teams -')
- t.save_data()
- print('- read predefined teams -')
- t.read_data()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement