薛鸿潇 5 лет назад
Родитель
Сommit
5a56aa84a1

+ 8 - 5
tower_sanguo/assets/scripts/data/GameData.ts

@@ -521,7 +521,8 @@ export default class GameData {
         }
         let data = response.data as PlayerProp;
 
-        console.log("PlayerInfo: ", data);
+        // console.log("PlayerInfo: ", data);
+        console.log('%cPlayerInfo:', 'color: green;', data);
 
         this.initPlayerPropsNoCheck(data.gameUserData);
         this.initPlayerProps(data);
@@ -556,9 +557,10 @@ export default class GameData {
             this.updateSkillData();
         }
 
+        TaskModel.getTaskDataByPlayer();
+        let task_list = TaskModel.task_data.list_data;
+        if (!task_list || !task_list.length) TaskModel.ResetTaskData();// 无数据则重置
         GameController.loadMain();
-        TaskModel.ResetTaskData();// 重置任务数据 - 本地测试暂用
-        TaskModel.getServerTaskData();// 请求服务器任务数据
     }
 
     /** 初始化数据 */
@@ -578,7 +580,8 @@ export default class GameData {
         this.player.setProp(PLAYERPROP.TURNTABLE_TOTAL, data.turntableTotal);
         this.player.setProp(PLAYERPROP.USESKILL_TIME, data.skill_coolTime);
         this.player.setProp(PLAYERPROP.TASK_REDBAG_COUNT, data.taskRedBag);
-        
+        this.player.setProp(PLAYERPROP.USER_DAILY_ACTIVE_S_INFO, data.USERDailyTaskINFO);
+
         // this.player.setProp(PLAYERPROP.GENERAL_TRAIN_TIMES, data.general_train_times);
         // this.player.setProp(PLAYERPROP.INVEST_TIMES, data.invest_times);
         // this.player.setProp(PLAYERPROP.GENERAL_LUCK_TIMES, data.general_luck_times);
@@ -850,7 +853,7 @@ export default class GameData {
         prop.add = add ? 1 : 0;
         prop.propType = type;
         prop.propValue = value;
-        this.updateProps([prop],callback);
+        this.updateProps([prop], callback);
     }
 
     /**

+ 13 - 0
tower_sanguo/assets/scripts/data/GameDefinition.ts

@@ -37,6 +37,19 @@ export enum PLAYERPROP {
     LOOK_VIDEO_TIMES = 28,
     /** 可补领红包币数量 29*/
     TASK_REDBAG_COUNT = 29,
+    /** 任务活跃服务端通知的数据 30
+     * - USERDailyTaskINFO 活跃度信息 需要校验
+    */
+    USER_DAILY_ACTIVE_S_INFO = 30,
+    /** 任务活跃数据 31
+     * - 任务条信息 无需校验
+    */
+    USER_DAILY_TASK_INFO = 31,
+    /** 任务活跃数据 32
+     * - 任务活跃信息 无需校验
+     * - 数值以30的为准
+    */
+    USER_DAILY_ACTIVE_INFO = 32,
 }
 
 export enum ITEMTYPE {

+ 1 - 3
tower_sanguo/assets/scripts/module/main/MainUI.ts

@@ -65,7 +65,7 @@ export default class MainUI extends BaseUI {
     lbl_pigback_count: cc.Label = null;
     @property({ type: cc.Button, displayName: '训练按钮' })
     btn_3: cc.Button = null;
-    
+
 
 
     @property({ type: cc.Node, displayName: "兵营红点" })
@@ -99,8 +99,6 @@ export default class MainUI extends BaseUI {
     private isPlayQipao_Marshal = false;
 
     onLoad() {
-        TaskModel.ResetTaskData();// 重置任务数据 - 本地测试暂用
-        TaskModel.getServerTaskData();// 请求服务器任务数据
 
         // this.btn_gm.node.active = false;
         this.ui = this.node.addComponent(MainNode);

+ 30 - 5
tower_sanguo/assets/scripts/module/task/TaskModel.ts

@@ -2,7 +2,7 @@ import { PLAYERPROP, RewardState } from "../../data/GameDefinition";
 import GameController from "../../GameController";
 import TaskProp from "../../net/msg/TaskProp";
 /** 任务条数据类型 */
-type TASKITEM = {
+export type TASKITEM = {
     //////////配置表数据//////////
     id: number;
     /** 任务描述 */
@@ -118,15 +118,37 @@ export default class TaskModel {
             this.task_data.list_data[i] = list_data;
             i++;
         }
+        console.log('%c每日任务数据已重置', 'color: green;');
+        // 通知服务端
+        let temp_str_list_data = JSON.stringify(this.task_data.list_data);
+        GameController.gameData.updatePropNoCheck(PLAYERPROP.USER_DAILY_TASK_INFO, temp_str_list_data);// 任务条数据
+        let temp_str_active_data = JSON.stringify(this.task_data.active_data);
+        GameController.gameData.updatePropNoCheck(PLAYERPROP.USER_DAILY_ACTIVE_INFO, temp_str_active_data);// 活跃数据
     }
+    /** 获取数据 by player 
+     * - 登陆时会获取
+     * - 等待优化
+    */
+    public static getTaskDataByPlayer() {
+        // 任务条数据
+        // let list_data = GameController.gameData.player.getProp(PLAYERPROP.USER_DAILY_TASK_INFO);
+        // if (list_data) {
+        //     let temp_str_list_data = JSON.parse(list_data)
+        //     if (temp_str_list_data) this.task_data.list_data = temp_str_list_data;
+        // }
 
-    /** 向服务端请求任务数据 */
-    public static getServerTaskData() {
-        GameController.http.getTaskInfo(TaskModel.serverTaskDataCall.bind(this));
+        // // 活跃数据 - 需要服务端校验
+        // let active_data = GameController.gameData.player.getProp(PLAYERPROP.USER_DAILY_ACTIVE_INFO);
+        // if (active_data) {
+        //     let temp_str_active_data = JSON.parse(active_data);
+        //     if (temp_str_active_data) this.task_data.active_data = temp_str_active_data;
+        // }
+        console.log('%c每日任务数据_s:', 'color: green;', TaskModel.task_data);
     }
+
     /** 获取数据 */
     private static serverTaskDataCall(s_data) {
-        cc.log('任务数据:%o', s_data);
+        cc.log('s_任务数据:%o', s_data);
         // this.task_data.cur_active_value = s_data.task_active_data.cur_active_value;
         // this.task_data.max_active_value = s_data.task_active_data.max_active_value;
         // this.task_data.task_box_state = s_data.task_active_data.task_box_state || [];
@@ -241,6 +263,9 @@ export default class TaskModel {
             }
             index++;
         }
+        // 通知服务端
+        let data2 = { addActiveToday: value }
+        GameController.http.scaveTaskActiveValue(data2);
     }
     /** 设置指定活跃宝箱状态 */
     public static setActiveBoxState(id, task_box_state, tv_box_state) {

+ 0 - 5
tower_sanguo/assets/scripts/module/task/TaskUI.ts

@@ -96,8 +96,6 @@ export default class TaskUI extends BaseUI {
         this.spr_pro_bar1.fillRange = 0;
         this.spr_pro_bar2.fillRange = 0;
         // 请求数据
-        // GameController.http.getTaskInfo(this.getTaskData.bind(this));
-        TaskModel.getServerTaskData();
         this.initStyle();
     }
     start() {
@@ -110,9 +108,6 @@ export default class TaskUI extends BaseUI {
         // 测试请求 奖励内容
         // let data = { taskId: 0 }
         // GameController.http.openTreasureChest(data, this.onTreasureChest.bind(this));
-        // 测试请求 存活跃值
-        // let data2 = { addActiveToday: 100 }
-        // GameController.http.scaveTaskActiveValue(data2, this.onTreasureChest.bind(this));
     }
     /** 奖励内容数据 */
     private onTreasureChest(data) {

+ 7 - 5
tower_sanguo/assets/scripts/net/HttpCommand.ts

@@ -24,7 +24,7 @@ export default class HttpCommand {
             this.serverUrl = 'https://xiyou-test.duiweize.com/';
         }
         this.serverUrl = 'http://172.16.15.97:9092/';//李扬
-        this.serverUrl = 'http://172.16.15.91:9092/';//悍国
+        // this.serverUrl = 'http://172.16.15.91:9092/';//悍国
     }
 
     httpM: any;
@@ -48,7 +48,7 @@ export default class HttpCommand {
     connectTest(callback) {
         GameController.commonData.ranKey = Utils.randomString()
         let data = {
-            "mac": "a5:65:e2:1c:b0:26,f6:60:e4:1a:b7:27",
+            "mac": "a5:65:e2:1c:b0:94,f6:60:e4:1a:b7:27",//94//26
             "psk": GameController.commonData.ranKey,
             "appId": GameController.commonData.appid
         }
@@ -159,10 +159,12 @@ export default class HttpCommand {
     getTaskInfo(callback) {
         this.sendData(HTTPTYPE.task_data, 'POST', callback);
     }
-    /** 存活跃值 */
-    scaveTaskActiveValue(data = { addActiveToday: 0 }, callback) {
+    /** 存活跃值 
+     * - 增加的活跃值
+    */
+    scaveTaskActiveValue(data = { addActiveToday: 0 }) {
         let url = 'dailytask/saveActiveToday';
-        this.sendData(url, data, callback);
+        this.sendData(url, data);
     }
     /** 开启宝箱 */
     openTreasureChest(data = { taskId: 0 }, callback) {

+ 16 - 0
tower_sanguo/assets/scripts/vo/PlayerVO.ts

@@ -4,6 +4,7 @@
 
 import { PLAYERPROP } from "../data/GameDefinition";
 import GameController from "../GameController";
+import { TASKITEM } from "../module/task/TaskModel";
 import CommanderSkillVO from "./CommanderSkillVO";
 import GeneralVO from "./GeneralVO";
 import Prop from "./Prop";
@@ -87,6 +88,21 @@ export default class PlayerVO {
     remaind_times: number = 3;
     /** 可补领红包币数量 登录时获取*/
     taskRedBag = 0;
+    /** 每日任务活跃数据 */
+    USERDailyTaskINFO = {
+        /** 用户活跃 */
+        active_value: 0,
+        /** 今日视频数 */
+        lv_count: 0,
+        /** 已兑换Id */
+        exchanged_id: [],
+        /** 活跃度更新时间 */
+        refresh_time: '',
+    };
+    /** 每日任务-任务条数据 
+     * - 无需校验,存在 gameUserData 内
+    */
+    task_list_data: Array<TASKITEM> = [];
 
 
     /** 初始武将id */