-
Notifications
You must be signed in to change notification settings - Fork 0
/
CardClass.py
85 lines (70 loc) · 2.9 KB
/
CardClass.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
##############################################################################
# Card Class
# Creates a poker card object for use with Pygame library.
##############################################################################
# Member variables
# string type; suit
# string type; value
# string type; card
##############################################################################
import ImageSpriteClass as ISC
class Card:
###############
# CONSTRUCTOR #
###############
def __init__(self, value, suit):
###########################################################################
# Initialize the card with a suit (c,d,h,s) and value (1-13).
# Both parameters should be entered as string types.
###########################################################################
self._suit = str(suit)
self._value = str(value)
self._cardName = str(value + suit)
self._imgFile = str("D:/CompSci/Projects/Python Poker/DECK/" +
self._cardName + ".gif")
self._backImgFile = str("D:/CompSci/Projects/Python Poker/DECK/b.gif")
self._sprite = ISC.ImageSprite(50,100, self._imgFile)
############
# MUTATORS #
############
def moveCard(self, x, y):
###########################################################################
# Use to move the card throughout the display/window
###########################################################################
self._sprite.moveTo(x,y)
def hide(self):
###########################################################################
# Use to display the back of the card, hide the value/suit.
###########################################################################
self._sprite.kill()
self._sprite = ISC.ImageSprite(50, 100, self._backImgFile)
def show(self):
###########################################################################
# Use to show the front of the card, the value and suit.
###########################################################################
self._sprite.kill()
self._sprite = ISC.ImageSprite(50,100, self._imgFile)
#############
# ACCESSORS #
#############
def getSuit(self):
return self._suit
def getValue(self):
return self._value
def getCardName(self):
return self._cardName
def getImageFile(self):
return self._imgFile
def getSprite(self):
return self._sprite
def getBackSprite(self):
return self._backSprite
#############
# OPERATORS #
#############
def __lt__(self, other):
return self._value < other._value
def __gt__(self, other):
return self._value > other._value
def __eq__(self, other):
return self._value == other._value