Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/FortuneMaker.activity
diff options
context:
space:
mode:
authorJustin Lewis <jtl1728@rit.edu>2010-01-25 22:48:00 (GMT)
committer Justin Lewis <jtl1728@rit.edu>2010-01-25 22:48:00 (GMT)
commit7272a3564d30922f1ff5ccff3c99ad0ff0596c03 (patch)
treea0c8b2550637760a8f87b46cd18b14b44a12d601 /FortuneMaker.activity
parent8d6b228ff182acad668f8a6af02fd3e364854ff9 (diff)
Improved room api to allow easier adding of items and enemies
Also now returns true if it was added successfully.
Diffstat (limited to 'FortuneMaker.activity')
-rw-r--r--FortuneMaker.activity/Room.py47
1 files changed, 37 insertions, 10 deletions
diff --git a/FortuneMaker.activity/Room.py b/FortuneMaker.activity/Room.py
index 4c4741c..2964857 100644
--- a/FortuneMaker.activity/Room.py
+++ b/FortuneMaker.activity/Room.py
@@ -51,15 +51,19 @@ class Room:
elif door in DOOR_INDEX and flag in DOOR_FLAGS:
self.has_doors = True
self.doors[door] = [door, flag]
+ return True
else:
print "INVALID DOOR AND/OR FLAG"
+ return False
def remove_door(self, door):
if door in DOOR_INDEX:
#TODO Check if should change has_door
self.doors[door] = ['0', '0']
+ return True
else:
print "INVALID DOOR"
+ return False
def get_door( self, door):
if door in DOOR_INDEX:
@@ -68,35 +72,58 @@ class Room:
def set_room_flag(self, flag):
if flag in SPEC_FLAGS:
self.special = flag
+ return True
else:
print "INVALID FLAG"
+ return False
def get_room_flag( self ):
return self.special
+ def add_enemy( self, enemy ):
+ for index in range( 0,4 ):
+ if self.enemy[index] == "0":
+ return self.set_enemy(index, enemy)
+ return False
+
def set_enemy( self, pos, enemy ):
- if enemy == "0":
- return
- elif pos >= 0 and pos <=3 and enemy in ENEM_INDEX:
- if enemy != '0':
- self.has_enemy = True
+ if pos >= 0 and pos <=3 and enemy in ENEM_INDEX:
self.enemy[pos] = enemy
+
+ self.has_enemy = False
+
+ for enemy in self.enemy:
+ if enemy != "0":
+ self.has_enemy = True
+ break
+
+ return True
else:
print "INVALID ENEMY POS OR ID"
+ return False
def get_enemy(self, pos):
if pos >=0 and pos <=3:
return self.enemy[pos]
+ def add_item( self, enemy ):
+ for index in range( 0,4 ):
+ if self.item[index] == "0":
+ return self.set_item(index, enemy)
+ return False
+
def set_item(self, pos, id, flag):
- if id == "0":
- return
- elif pos >= 0 and pos <=3 and id in ITEM_INDEX and flag in ITEM_FLAGS:
- if item != '0':
- self.has_item = True
+ if pos >= 0 and pos <=3 and id in ITEM_INDEX and flag in ITEM_FLAGS:
self.item[ pos ] = [id, flag]
+
+ self.has_item = False
+ for item in self.item:
+ self.has_item = True
+
+ return True
else:
print "INVALID POS OR ID OR FLAG"
+ return False
def room_to_string(self):
str = ""