def applyQuest(self,taskId,taskType = 1): '''接受任务 @param taskId: int 任务的id ''' allMainTask = dbtask.ALL_MAIN_TASK taskInfo = allMainTask.get(taskId) characterId = self._owner.baseInfo.id lastMainTaskId = self._MainRecord.get('mainRecord',10000) if lastMainTaskId==taskId: return {'result':False,'message':Lg().g(453),\ 'task_id':taskId} if not taskInfo: return {'result':False,'message':Lg().g(454),\ 'task_id':taskId} if not self.canReceived(taskId): return {'result':False,'message':Lg().g(444),\ 'task_id':taskId} task = Quest(taskId,characterId = self._owner.baseInfo.id) task.setProfession(self._owner.profession.getProfession()) result = self.giveItemHandle(taskId) if not result.get('result'): return result res = task.InsertProcess() if res: if res and taskType==1: nowdate = datetime.datetime.now() props = {'mainRecord':taskId,'applyTime':str(nowdate),\ 'status':0} dbtask.updateMainTaskRecord(characterId, props) self._MainRecord = {'mainRecord':taskId,'status':0} self._tasks[taskId] = task self.pushPlayerScenceNpcQuestStatus() self.pushPlayerQuestProcessList() return {'result':True,'message':Lg().g(445)%taskInfo['taskName'],\ 'task_id':taskId} return {'result':False,'message':Lg().g(444),\ 'task_id':taskId}