Exemplo n.º 1
0
                4:['Gardens','Bureaucrat','Feast','Militia','Moneylender','Remodel','Smithy','Spy','Thief','Throne Room'],
                5:['Duchy','Market','Council Room','Festival','Laboratory','Library','Mine','Witch'],
                6:['Gold','Adventurer'],8:['Province']}

#Pick 10 cards from box to be in the supply.
boxlist = [k for k in box]
random.shuffle(boxlist)
random10 = boxlist[:10]
supply = defaultdict(list,[(k,box[k]) for k in random10])


#The supply always has these cards
supply["Copper"]=[Dominion.Copper()]*(60-len(player_names)*7)
supply["Silver"]=[Dominion.Silver()]*40
supply["Gold"]=[Dominion.Gold()]*30
supply["Estate"]=[Dominion.Estate()]*nV
supply["Duchy"]=[Dominion.Duchy()]*nV
supply["Province"]=[Dominion.Province()]*nV
supply["Curse"]=[Dominion.Curse()]*nC

#initialize the trash
trash = []

#Costruct the Player objects
players = []
for name in player_names:
    if name[0]=="*":
        players.append(Dominion.ComputerPlayer(name[1:]))
    elif name[0]=="^":
        players.append(Dominion.TablePlayer(name[1:]))
    else:
Exemplo n.º 2
0
# Get player names
player_names = testUtility.GetPlayers()

# number of curses and victory cards
nV, nC = testUtility.SetNumVC(player_names)

# Define box
box = testUtility.GetBoxes(nV)
supply_order = testUtility.SetSupplyOrder()

# Pick 10 cards from box to be in the supply.
boxlist, supply = testUtility.GetSupplyCards(box)

# The supply always has these cards
testUtility.DefaultSupply(supply, player_names, nV, nC)
supply["Province"] = [Dominion.Estate()] * nV
# initialize the trash
trash = []

# Construct the Player objects
players = []
testUtility.MakePlayers(players, player_names)

# Play the game
turn = 0
while not Dominion.gameover(supply):
    turn += 1
    print("\r")
    for value in supply_order:
        print(value)
        for stack in supply_order[value]: