X-Git-Url: https://harishankar.org/repos/?p=butaba-adventures.git;a=blobdiff_plain;f=gameobjects.py;h=c9c945ba973b932d8c2fd0b947175dc3b00ab46f;hp=2edbc5b1c86a11ddb16853c926b191013e35741c;hb=58f80c37fa3c97f3cfb2a0cdd3096c529f65e204;hpb=63f74206e69c1147ed006ccadb359fc6e21fefbb diff --git a/gameobjects.py b/gameobjects.py index 2edbc5b..c9c945b 100644 --- a/gameobjects.py +++ b/gameobjects.py @@ -22,6 +22,45 @@ class GameObject: def use (self, otherobject): pass +# class for well +class Well (GameObject): + def __init__ (self, row, col, image=None, liquid = "water"): + self.liquid = liquid + text = "Well" + GameObject.__init__ (self, row, col, text, image, False, "Draw %s" % liquid) + + def interact (self): + return False + + def use (self, otherobject): + # if the object is a bucket, fill it + if isinstance (otherobject, Bucket) is True: + # but only if it is empty + if otherobject.liquid is None: + otherobject.liquid = self.liquid + + +# class for buckets +class Bucket (GameObject): + def __init__ (self, row, col, image=None, liquid = None): + self.liquid = liquid + text = "Bucket" + if liquid is not None: + text = text + " containing %s" % liquid + GameObject.__init__ (self, row, col, text, image, True, "Empty it") + + def interact (self): + return True + + def use (self, otherobject): + # if the other object is a bucket, transfer its + # contents to the other bucket + if isinstance (otherobject, Bucket): + otherobject.liquid = self.liquid + # empty the bucket of its contents + self.liquid = None + self.text = "Bucket" + class GoldCoins (GameObject): # initialize def __init__ (self, row, col, image, value):