From e0510dc8f563cee52b7da5a5e57cc596abc4afc6 Mon Sep 17 00:00:00 2001
From: client_Zxw <826696702@qq.com>
Date: 星期二, 22 一月 2019 15:41:22 +0800
Subject: [PATCH] 5314 子 【1.5.100】登录奖励活动

---
 System/OpenServerActivity/LoginRewardModel.cs |   29 ++++++++++++++++++-----------
 1 files changed, 18 insertions(+), 11 deletions(-)

diff --git a/System/OpenServerActivity/LoginRewardModel.cs b/System/OpenServerActivity/LoginRewardModel.cs
index a2449d0..2df55f8 100644
--- a/System/OpenServerActivity/LoginRewardModel.cs
+++ b/System/OpenServerActivity/LoginRewardModel.cs
@@ -108,23 +108,29 @@
             {
                 var dit = LoginAwardInfoDic[dayindex];
                 dit.DayIndex = dayindex;
-                for (int j = 0; j < dit.ActionType.Length; j++)
+                for (int j = 0; j < Dayinfo.ACount; j++)
                 {
-                    if (dit.ActionType[j].TemplateID == Dayinfo.TaskList[0].TemplateID)
+                    var taskList = Dayinfo.TaskList[j];
+                    int Index = dit.ActionType.FindIndex(s => s.TemplateID == taskList.TemplateID);
+                    if (Index != -1)
+                    {
+                        dit.ActionType[Index].CurTimes = taskList.CurTimes;
+                        dit.ActionType[Index].GotTimes = taskList.GotTimes;
+                    }
+                    else
                     {
                         ActionTypeClass ActionType = new ActionTypeClass();
-                        ActionType.TemplateID = Dayinfo.TaskList[0].TemplateID;
-                        ActionType.CurTimes = Dayinfo.TaskList[0].CurTimes;
-                        ActionType.GotTimes = Dayinfo.TaskList[0].GotTimes;
-                        dit.ActionType[j] = ActionType;
+                        ActionType.TemplateID = taskList.TemplateID;
+                        ActionType.CurTimes = taskList.CurTimes;
+                        ActionType.GotTimes = taskList.GotTimes;
+                        dit.ActionType.Add(ActionType);
                     }
-
                 }
                 LoginAwardInfoDic[dayindex] = dit;
             }
             else
             {
-                loginAwardPlayerClass.ActionType = new ActionTypeClass[Dayinfo.ACount];
+                loginAwardPlayerClass.ActionType = new List<ActionTypeClass>();
                 for (int k = 0; k < Dayinfo.ACount; k++)
                 {
                     var Task = Dayinfo.TaskList[k];
@@ -132,8 +138,9 @@
                     ActionType.TemplateID = Task.TemplateID;
                     ActionType.CurTimes = Task.CurTimes;
                     ActionType.GotTimes = Task.GotTimes;
-                    LoginAwardInfoDic.Add(dayindex, loginAwardPlayerClass);
+                    loginAwardPlayerClass.ActionType.Add(ActionType);
                 }
+                LoginAwardInfoDic.Add(dayindex, loginAwardPlayerClass);
             }
         }
         SetRedPoint();
@@ -149,7 +156,7 @@
         if (LoginAwardInfoDic.ContainsKey(Day))
         {
             var loginAward = LoginAwardInfoDic[Day];
-            for (int i = 0; i < loginAward.ActionType.Length; i++)
+            for (int i = 0; i < loginAward.ActionType.Count; i++)
             {
                 var ActionType = loginAward.ActionType[i];
                 if (ID == ActionType.TemplateID)
@@ -167,7 +174,7 @@
         if (LoginAwardInfoDic.ContainsKey(Day))
         {
             var loginAward = LoginAwardInfoDic[Day];
-            for (int i = 0; i < loginAward.ActionType.Length; i++)
+            for (int i = 0; i < loginAward.ActionType.Count; i++)
             {
                 var ActionType = loginAward.ActionType[i];
                 if (ID == ActionType.TemplateID)

--
Gitblit v1.8.0