MCPcopy Create free account
hub / github.com/Semporia/Scripts / getActTask

Function getActTask

jd_cfd.js:820–871  ·  view source on GitHub ↗
(type = true)

Source from the content-addressed store, hash-verified

818
819// 牛牛任务
820async function getActTask(type = true) {
821 return new Promise(async (resolve) => {
822 $.get(taskUrl(`story/GetActTask`), async (err, resp, data) => {
823 try {
824 if (err) {
825 console.log(`${JSON.stringify(err)}`)
826 console.log(`${$.name} GetActTask API请求失败,请检查网路重试`)
827 } else {
828 data = JSON.parse(data.replace(/\n/g, "").match(new RegExp(/jsonpCBK.?\((.*);*\)/))[1]);
829 if (type) {
830 for (let key of Object.keys(data.Data.TaskList)) {
831 let vo = data.Data.TaskList[key]
832 if ([0, 1, 2].includes(vo.dwOrderId) && (vo.dwCompleteNum !== vo.dwTargetNum) && vo.dwTargetNum < 10) {
833 if (vo.strTaskName === "升级1个建筑") continue
834 console.log(`开始【🐮牛牛任务】${vo.strTaskName}`)
835 for (let i = vo.dwCompleteNum; i < vo.dwTargetNum; i++) {
836 console.log(`【🐮牛牛任务】${vo.strTaskName} 进度:${i + 1}/${vo.dwTargetNum}`)
837 await doTask(vo.ddwTaskId, 2)
838 await $.wait(3000)
839 }
840 }
841 }
842 data = await getActTask(false)
843 for (let key of Object.keys(data.Data.TaskList)) {
844 let vo = data.Data.TaskList[key]
845 if ((vo.dwCompleteNum >= vo.dwTargetNum) && vo.dwAwardStatus !== 1) {
846 await awardActTask('Award', vo)
847 await $.wait(3000)
848 }
849 }
850 data = await getActTask(false)
851 if (data.Data.dwCompleteTaskNum >= data.Data.dwTotalTaskNum) {
852 if (data.Data.dwStatus !== 4) {
853 console.log(`【🐮牛牛任务】已做完,去开启宝箱`)
854 await awardActTask('story/ActTaskAward')
855 await $.wait(3000)
856 } else {
857 console.log(`【🐮牛牛任务】已做完,宝箱已开启`)
858 }
859 } else {
860 console.log(`【🐮牛牛任务】未全部完成,无法开启宝箱\n`)
861 }
862 }
863 }
864 } catch (e) {
865 $.logErr(e, resp)
866 } finally {
867 resolve(data)
868 }
869 })
870 })
871}
872function awardActTask(function_path, taskInfo = '') {
873 const { ddwTaskId, strTaskName} = taskInfo
874 return new Promise((resolve) => {

Callers 1

cfdFunction · 0.85

Calls 7

awardActTaskFunction · 0.85
taskUrlFunction · 0.70
doTaskFunction · 0.70
getMethod · 0.45
logMethod · 0.45
waitMethod · 0.45
logErrMethod · 0.45

Tested by

no test coverage detected