MCPcopy Create free account
hub / github.com/ActiveState/code / placeCard

Method placeCard

recipes/Python/580811_Uno_TextBased/recipe-580811.py:1047–1084  ·  view source on GitHub ↗
(self, card=None)

Source from the content-addressed store, hash-verified

1045 j -= 1
1046
1047 def placeCard(self, card=None):
1048 if card == None:
1049 ### Used At Beginning For First Card ###
1050 card = self.deck.draw()
1051 self.elements['DNum'] = len(self.deck)
1052
1053 cardColor = card.getColorCode()
1054 cardBigNums = card.getBigNum(self.reverse)
1055
1056 self.currentColor = card.getColor()
1057 self.currentValue = card.getValue()
1058
1059 self.pile.insert(card)
1060 self.elements['oHeader'] = '{}\u2666\u2666\u2666=========\u2666\u2666\u2666\033[0m\t'.format(cardColor)
1061 self.elements['oMiddle'] = cardBigNums
1062
1063 if len(self.pile) > 1:
1064 previousCard = self.pile[1]
1065 previousCardColor = previousCard.getColorCode()
1066 self.elements['uHeader'] = '{} \u2666\u2666\u2666=========\u2666\u2666\u2666\033[0m\t\t'.format(previousCardColor)
1067 self.elements['uMiddle'] = '{}| |\033[0m'.format(previousCardColor)
1068 self.elements['uLower'] = '{}\u2666\u2666\u2666\033[0m'.format(previousCardColor)
1069
1070 if self.currentColor == 'wild':
1071 self.event = 'wild'
1072
1073 if self.currentValue == 'X':
1074 self.event = 'skip'
1075 elif self.currentValue == 'R':
1076 if len(self.players) > 2:
1077 self.event = 'reverse'
1078 else:
1079 self.event = 'skip'
1080 elif self.currentValue == '+4':
1081 self.drawAmount = 4
1082 elif self.currentValue == '+2':
1083 self.drawAmount = 2
1084 self.passes = 0
1085
1086 def extractCard(self, playerID, index):
1087 card = self.players[playerID].removeCard(index)

Callers 2

beginMethod · 0.95
nextTurnMethod · 0.95

Calls 7

getColorCodeMethod · 0.80
getBigNumMethod · 0.80
drawMethod · 0.45
getColorMethod · 0.45
getValueMethod · 0.45
insertMethod · 0.45
formatMethod · 0.45

Tested by

no test coverage detected