diff demos/rpg/scripts/quests/basequest.py @ 550:d0282579668c

Added QuestManager. The player can now move from map to map and the state of the quests remains persistent. Both quests the NPC gives you are now completable. Still have to clean up the quest loading code. Started adding more comments.
author prock@33b003aa-7bff-0310-803a-e67f0ece8222
date Tue, 15 Jun 2010 17:53:20 +0000
parents 67f6f3538e88
children 69d50e751c9a
line wrap: on
line diff
--- a/demos/rpg/scripts/quests/basequest.py	Fri Jun 11 21:29:58 2010 +0000
+++ b/demos/rpg/scripts/quests/basequest.py	Tue Jun 15 17:53:20 2010 +0000
@@ -33,22 +33,26 @@
 		   'RETURN_ITEM':1}
 
 class Quest(object):
-	def __init__(self, owner, questname, questtext):
-		self._owner = owner
-		self._name = questname
+	def __init__(self, ownerid, questid, questtitle, questtext):
+		self._ownerid = ownerid
+		self._questid = questid
+		self._name = questtitle
 		self._text = questtext
 		
+	def __eq__(self, other):
+		return self._questid == other.id
+		
 	def checkQuestCompleted(self, actor):
 		pass
 
-	def _getOwner(self):
-		return self._owner
+	def _getOwnerID(self):
+		return self._ownerid
 	
 	def _getName(self):
 		return self._name
 		
-	def _setName(self, questname):
-		self._name = questname
+	def _setName(self, questtitle):
+		self._name = questtitle
 		
 	def _getText(self):
 		return self._text
@@ -56,13 +60,17 @@
 	def _setText(self, questtext):
 		self._text = questtext
 
-	owner = property(_getOwner)
+	def _getID(self):
+		return self._questid
+		
+	ownerid = property(_getOwnerID)
 	name = property(_getName, _setName)
 	text = property(_getText, _setText)
+	id = property(_getID)
 
 class ReturnItemQuest(Quest):
-	def __init__(self, owner, questname, questtext):
-		super(ReturnItemQuest, self).__init__(owner, questname, questtext)
+	def __init__(self, ownerid, questid, questtitle, questtext):
+		super(ReturnItemQuest, self).__init__(ownerid, questid, questtitle, questtext)
 
 		self._requireditems = []
 		self._requiredgold = 0