_rspOk(); } public function taskList(){ $day = getReqVal('day', 1); $metaList = \mt\RookieTask::getCustomDayMetaList($day); $taskList1 = array(); foreach ($metaList as $meta){ $metaDto = \services\RookieTaskService::getTaskDto($meta); array_push($taskList1,$metaDto); } $metaList2 = \mt\RookieTask::getCustomDayMetaList(); $taskList2 = array(); foreach ($metaList2 as $meta){ $metaDto = \services\RookieTaskService::getTaskDto($meta); array_push($taskList2,$metaDto); } $this->_rspData(array( 'task_list1' => $taskList1, 'task_list2' => $taskList2, )); } public function commitTaskS(){ $task_id = getReqVal('task_id', 0); $taskMeta = mt\RookieTask::find($task_id); if (!$taskMeta) { $this->_rspErr(1, 'task_id parameter error'); return; } $taskMetaDto = \services\RookieTaskService::getTaskDto($taskMeta); if (!$taskMetaDto) { $this->_rspErr(10, 'server internal error'); return; } if ($taskMetaDto['state'] == \services\RookieTaskService::RECEIVED_STATE) { $this->_rspErr(2, "Can't get it again"); return; } if ($taskMetaDto['state'] == \services\RookieTaskService::NOT_FINISHED_STATE) { $this->_rspErr(3, 'task objectives not achieved'); return; } if ($taskMetaDto['state'] == \services\RookieTaskService::UNARRIVED_TIME_STATE) { $this->_rspErr(3, 'The task is not started'); return; } $dropMeta = mt\Drop::get($taskMeta['reward']); if (!$dropMeta) { $this->_rspErr(10, 'server internal error:' . $taskMeta['reward']); return; } $propertyChgService = new services\PropertyChgService(); $awardService = new services\AwardService(); $this->_scatterDrop('rookieTask:' . $task_id, $dropMeta, $awardService, $propertyChgService); RookieTask::add($task_id); $this->_rspData(array( 'award' => $awardService->toDto(), 'property_chg' => $propertyChgService->toDto(), )); } public function getTaskRedTags(){ $metaList = \mt\RookieTask::allList(); $list = array(); foreach ($metaList as $meta){ $metaDto = \services\RookieTaskService::getTaskDto($meta); if ($metaDto['state'] == \services\RookieTaskService::FINISHED_STATE){ array_push($list,$meta['task_day']); } } $this->_rspData(array( 'list' => $list, )); } }