Changes in [1:3]
Legend:
- Unmodified
- Added
- Removed
-
main.py
r1 r3 10 10 11 11 def reveal_spies(self, spies): 12 """If this player is a spy, this method will be called to reveal the identities 13 of *all* the spies (including this player). 14 15 It is passed as an array of IDs. 16 17 """ 12 18 pass 13 19 14 20 def propose_team(self, count): 21 """Asks the player to propose a team as a team-lead. 22 23 Must return an array of `count` unique IDs. The proposed team may 24 include the player, but does not need to. 25 26 """ 15 27 team = list(range(self.count)) 16 28 shuffle(team) … … 18 30 19 31 def approve_team(self, team): 32 """Asks the player to vote on a proposed team. 33 34 True indicates approval, False disapproval. The player will be asked 35 to vote on all teams, even one that it proposes. 36 37 """ 20 38 return True 21 39 22 40 def observe_team_vote(self, approved, votes): 41 """Allows the player to observe the outcome of a vote to approve a proposed 42 team. 43 44 The final result is given as `approved`, and individual votes (ordered 45 by player ID) are given as an array as `votes`. 46 47 """ 23 48 pass 24 49 25 50 def perform_mission(self): 51 """If this player is a spy, called to ask the player whether to fail the 52 mission. 53 54 True indicates that this player will not cause a failure, False that it 55 will cause a failure. 56 57 Note that some missions require 2 players to attempt a mission failure 58 to actually fail the mission. 59 60 """ 26 61 return False 27 62 28 63 def observe_mission(self, success, failures): 64 """Allows the player to observe the outcome of a mission. 65 66 The final result is given as `success`. The number of failures is 67 given (as an integer) as `failures`. 68 69 """ 29 70 pass 30 71 31 72 def observe_game(self, success): 73 """Allows the player to observe the outcome of the game. 74 75 True indicates the Resistance won, False the Government (spies). 76 77 """ 32 78 pass 33 79 … … 58 104 def observe_mission(self, success, failures): 59 105 pass 60 61 106 62 107 … … 108 153 losses = 0 109 154 captain = 0 155 team_failures = 0 110 156 111 157 for mission in range(1, 6): … … 129 175 captain = (captain + 1) % player_count 130 176 if approved: 177 team_failures = 0 131 178 failures = 0 132 179 for i in team: … … 158 205 break 159 206 else: 160 pass 161 162 main(10) 207 team_failures += 1 208 if team_failures == 5: 209 print("The spies won!") 210 for p in players: 211 p.observe_game(False) 212 return 213 214 215 if __name__ == '__main__': 216 main(10)
Note: See TracChangeset
for help on using the changeset viewer.