签到 - wolfcon/NGA-API-Documents GitHub Wiki

16 签到

16.1 用户签到

输入地址

/nuke.php?

输入参数

__lib //固定为 check_in
__act //固定为 check_in
__output //输出格式 见1.1

必须使用post 登录状态 提交后服务器会返回签到是否成功的信息 如果签到成功会返回可完成的任务信息 如果签到成功时完成了任务会返回完成的任务信息 目前只对认证的客户端有效(见13节)

返回信息

window.script_muti_get_var_store={
  "data":{
    "0":"签到成功", //第一个元素 返回给用户的提示信息

    "1":{//第二个元素 用户签到状态
      "uid":58, //当前用户ID
      "continued":1, //当前的连续签到天数(全局)
      "sum":38, //当前的签到总天数(全局)
      "last_time":1397270302 //上一次签到时间
      },

    "2":{//第三个元素 可完成或已完成的任务
      "success":{ //达成完成条件的任务(在访问此接口时会自动完成)
        "1":{
          "id":1, //任务ID
          "name":"测试任务", //任务名
          "info":"测试\n  任务信息", //任务的文字描述 可以使用bbscode
          "detail":"任务必须满足以下条件:\n连续签到3天,...", //任务的详细信息
          "stat":"目前已经连续签到1天\n共计签到1\n\n任务于 2014-04-11 18:11:48 完成\n\n", //当前用户的此任务完成状况
          "raw_detail":{}, //任务详细信息的原始格式 见15.2
          "stat_detail":{}, //完成状况的原始格式 见15.3
          },
        ... //可能有多个
        }
      "available":{ //对当前用户有效(可完成)的任务但是未达成完成条件的任务(如果有的话)
        "1":{
          "id":1,
          "name":"测试任务",
          "info":"测试\n  任务信息",
          "detail":"任务必须满足以下条件:\n连续签到3天,...",
          "stat":"目前已经连续签到1天\n共计签到1\n\n任务于 2014-04-11 18:11:48 完成\n\n",
          "raw_detail":{}, //任务详细信息的原始格式 见15.2
          "stat_detail":{}, //完成状况的原始格式 见15.3
          },
        ... //可能有多个
        }
      "reward":{//本次访问接口时完成的任务的奖励
        1://完成的任务的id
          "徽章(xxoo) 100铜币"//此任务获得奖励的文字说明 可能有很多 也可能没有(有任务的奖励是随机的

        4:"声望(xxoo)" //如果完成了不止一个任务,会有多条
        ....
        }
      },
    },
  "time":1397452410,
  }

16.2 获得签到状态

输入地址

/nuke.php?

输入参数

__lib //固定为 check_in
__act //固定为 get_stat
__output //输出格式 见1.1

必须使用post 登录状态 提交后服务器会返回当前的签到状态和可完成与完成任务的信息 目前只对认证的客户端有效(见13节)

返回信息

window.script_muti_get_var_store={
  "data":{
    "0":{//第一个元素 用户签到状态
      "uid":58, //当前用户ID
      "continued":1, //当前的连续签到天数(全局)
      "sum":38, //当前的签到总天数(全局)
      "last_time":1397270302 //上一次签到时间
      },

    "1":{//第二个元素 可完成或已完成的任务
      "success":{ //达成完成条件的任务(在访问此接口时不会完成)
        "1":{
          "id":1, //任务ID
          "name":"测试任务", //任务名
          "info":"测试\n  任务信息", //任务的文字描述 可以使用bbscode
          "detail":"任务必须满足以下条件:\n连续签到3天,...", //任务的详细信息
          "stat":"目前已经连续签到1天\n共计签到1\n\n任务于 2014-04-11 18:11:48 完成\n\n", //当前用户的此任务完成状况
          "raw_detail":{}, //任务详细信息的原始格式 见15.2
          "stat_detail":{}, //完成状况的原始格式 见15.3
          },
        ... //可能有多个
        }
      "available":{ //对当前用户有效(可完成)的任务但是未达成完成条件的任务(如果有的话)
        "1":{
          "id":1,
          "name":"测试任务",
          "info":"测试\n  任务信息",
          "detail":"任务必须满足以下条件:\n连续签到3天,...",
          "stat":"目前已经连续签到1天\n共计签到1\n\n任务于 2014-04-11 18:11:48 完成\n\n",
          "raw_detail":{}, //任务详细信息的原始格式 见15.2
          "stat_detail":{}, //完成状况的原始格式 见15.3
          },
        ... //可能有多个
        }
      },
    },
  "time":1397452410,
  }

16.3 签到任务执行流程

  1. 由接口15.1获取签到事件的相关任务列表 并显示任务
  2. 由接口16.1获取全局签到计数状态
  3. 用户执行签到动作 执行接口16.1更新全局签到计数 并对任务列表中的任务依次执行接口15.5 获取任务完成状态并更新任务显示