Blame view

src/models/Daily.lua 10.9 KB
be9c9ca6   zhouahaihai   角色评论
1
2
  -- 日常数据
  
fa992c94   liuzujun   添加daily,diner,act...
3
  local Daily = class("Daily", require("shared.ModelBaseMysql"))
be9c9ca6   zhouahaihai   角色评论
4
  
a85b344f   zhangqijia   feat: 挂机图鉴
5
6
  oneDay = 60*60*24
  
be9c9ca6   zhouahaihai   角色评论
7
  function Daily:ctor(properties)
a43410e1   zhengshouren   整理格式,使用tab替代空格
8
  	Daily.super.ctor(self, properties)
be9c9ca6   zhouahaihai   角色评论
9
10
11
  end
  
  Daily.schema = {
fa992c94   liuzujun   添加daily,diner,act...
12
13
  	id 				= {"number", 0, "pri"},		-- 角色id
  	commentHero		= {"string", "", "blob"},		-- 单日评论食灵记录 type=1
87cc3a35   zhengshouren   餐厅建筑升级逻辑
14
15
  	hangQC			= {"number", 0},		-- 挂机快速次数
  	dinerQC			= {"number", 0},		-- 贩卖加速次数
e38b9c49   zhouhaihai   无尽次数
16
  	advElC			= {"number", 0},		-- 无尽次数(消耗体力)
09be9059   zhouhaihai   冒险接口
17
  	advBC			= {"number", 0},		-- 冒险次数购买次数(冒险体力购买次数)
e38b9c49   zhouhaihai   无尽次数
18
  	advElBC			= {"number", 0},		-- 无尽次数购买次数(冒险体力购买次数)
f60b89b1   zhouhaihai   奖励副本
19
  	advWs			= {"table", {}}, 		-- 冒险队工坊
c384626d   zhouhaihai   好友
20
21
22
  	bonusC			= {"table", {}}, 		-- 奖励副本 次数 {[type] = {c = 0, b = 0}}
  	giveFP			= {"table", {}},		-- 给谁送过心心
  	getFP			= {"table", {}},		-- 领过谁的心心
4cf74232   zhouhaihai   pvp
23
  	pvpFree			= {"number", 0},		-- pvp使用免费次数
4c5d72ab   zhouhaihai   高级pvp
24
  	pvpFreeH		= {"number", 0},		-- 高级pvp使用免费次数
cccc9c70   zhouhaihai   商城
25
26
27
  
  	dailySDC		= {"table", {}},		-- daily shop diamond  count {[id] = count} -- 每日商城购买次数统计
  	dailySDD		= {"table", {}},		-- daily shop diamond  disount {[id] = 1} -- 每日商城折扣统计
9ced5432   zhouhaihai   冒险支援效果 保底事件
28
  
d51114bd   wangyujie   完成需求:每日金币购买
29
30
  	advSupRe		= {"number", 0}, 		-- 冒险支援效果刷新次数
  	goldBuyT		= {"number", 0}, 		-- 金币购买次数
317a46a9   liuzujun   添加特权卡
31
  
1a0b3c56   liuzujun   抽卡保底,切换定向卡池
32
33
  	unlockPool		= {"table", {}},		-- 解锁的属性卡池
  	curPool 		= {"number", 0},		-- 属性卡池当前索引
7113ad0c   liuzujun   每日抽卡次数触发礼包
34
  	drawHeroCnt		= {"number", 0},		-- 每日抽卡次数
a85b344f   zhangqijia   feat: 挂机图鉴
35
  
f0de8a60   zhangqijia   挖宝跨天,前一天天正在挖的宝被刷掉...
36
  	treasureBase	= {"number", 0}, 		-- 资源值
a85b344f   zhangqijia   feat: 挂机图鉴
37
  	treasureList 	= {"table", {}}, 		--挂机图鉴
be9c9ca6   zhouahaihai   角色评论
38
39
  }
  
be9c9ca6   zhouahaihai   角色评论
40
  function Daily:updateProperty(params)
a43410e1   zhengshouren   整理格式,使用tab替代空格
41
42
43
  	local type, default = table.unpack(self.schema[params.field])
  
  	if params.delta then
4faef572   zhouhaihai   冒险任务,冒险扫荡, 冒险中继
44
  		self:incrProperty(params.field, params.delta)
440aa055   zhouhaihai   聊天
45
46
47
  		if not params.notNotify then
  			self.owner:notifyUpdateProperty(params.field, self:getProperty(params.field))
  		end
a43410e1   zhengshouren   整理格式,使用tab替代空格
48
49
50
51
  		return true
  	end
  	if params.value then
  		self:setProperty(params.field, params.value)
440aa055   zhouhaihai   聊天
52
53
54
  		if not params.notNotify then
  			self.owner:notifyUpdateProperty(params.field, self:getProperty(params.field))
  		end
a43410e1   zhengshouren   整理格式,使用tab替代空格
55
56
57
  		return true
  	end
  	return false
be9c9ca6   zhouahaihai   角色评论
58
59
60
  end
  
  function Daily:refreshDailyData(notify)
c384626d   zhouhaihai   好友
61
  	redisproxy:del(FRIEND_POINT:format(self.owner:getProperty("id")))
cccc9c70   zhouhaihai   商城
62
  	local dataMap = {}
a43410e1   zhengshouren   整理格式,使用tab替代空格
63
  	for field, schema in pairs(self.schema) do
fc316d1f   zhouhaihai   冒险体力优化
64
  		if field == "advElC" then
6f3959ce   zhouhaihai   bug
65
  			if self:getProperty(field) > 0 then
0e3ab88d   zhouhaihai   中继层
66
67
  				dataMap[field] = 0
  			end
7104ee66   liuzujun   重复过新手bug, daily错误...
68
69
  		elseif field == "id" then
              -- skip
a85b344f   zhangqijia   feat: 挂机图鉴
70
71
  		elseif field == "treasureList" then
  			dataMap[field] = self:getTreasrueList()
0e3ab88d   zhouhaihai   中继层
72
  		elseif field ~= "key" then
a43410e1   zhengshouren   整理格式,使用tab替代空格
73
  			local typ, def = table.unpack(schema)
cccc9c70   zhouhaihai   商城
74
75
76
77
78
79
  			dataMap[field] = def
  		end
  	end
  	-- 每日折扣搞一下
  	local dailySDD = {}
  	local sddPool = {}
c5825110   saicom   新增用户商城相关数据
80
81
  	for id, data in pairs(csvdb["shop_normalCsv"]) do
  		if data.shop == 1 and data.disount ~= 0 then
cccc9c70   zhouhaihai   商城
82
  			table.insert(sddPool, id)
a43410e1   zhengshouren   整理格式,使用tab替代空格
83
84
  		end
  	end
cccc9c70   zhouhaihai   商城
85
86
87
88
89
90
91
  	for i = 1, math.min(#sddPool, globalCsv.shop_diamond_disount_count) do
  		local idx = math.randomInt(1, #sddPool)
  		dailySDD[sddPool[idx]] = 1
  		table.remove(sddPool, idx)
  	end
  	dataMap["dailySDD"] = dailySDD
  	self:setProperties(dataMap)
a43410e1   zhengshouren   整理格式,使用tab替代空格
92
93
94
  	if notify then
  		self.owner:notifyUpdateProperties(self:data())
  	end
be9c9ca6   zhouahaihai   角色评论
95
96
  end
  
a85b344f   zhangqijia   feat: 挂机图鉴
97
98
99
100
101
102
  --解锁
  function Daily:checkUnlock(treaval)
  	local role = self.owner
  	local treasureC = treaval.unlock:toArray(true, "=")
  	local show = false
  	if treasureC[1] == 1 then --通关关卡
e639a6b9   zhangqijia   fix: 挂机图鉴-绑定关卡
103
  		if  self.owner:checkHangPass(treasureC[2]) then show = true end
a85b344f   zhangqijia   feat: 挂机图鉴
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
  	elseif treasureC[1] == 2 then --通关拾荒章节=x层
  		local chapterId = treasureC[2]
  		local layer = 1
  		local advCsv = csvdb["adv_chapterCsv"][chapterId]
  		if not advCsv then return false end --不存在的章节
  		if math.floor(chapterId / 100) ~= 2 then
  			layer = math.min(layer, advCsv.limitlevel)
  		end
  		local advPass = role:getProperty("advPass")
  		if (advPass[chapterId] or 0) < layer then
  			show = false
  		else
  			show = true
  		end
  	elseif treasureC[1] == 3 then --拥有指定id的角色时
  		local hero = role:getHeroByID(treasureC[2])
  		if hero then show = true end
  	else
  		show = true
      end
  	return show
  end
  
  --CD
  function Daily:checkTreasureExpired(treasureAttr, treasureList)
  	local curInfo = treasureList[treasureAttr.id]
  	if curInfo then
  		-- check finish
  		if curInfo["expire_time"] then
  			if curInfo.cool_time > 1 then
e639a6b9   zhangqijia   fix: 挂机图鉴-绑定关卡
134
  				if skynet.timex() >= curInfo["expire_time"] then
a85b344f   zhangqijia   feat: 挂机图鉴
135
  					treasureList[treasureAttr.id] = nil
e639a6b9   zhangqijia   fix: 挂机图鉴-绑定关卡
136
137
  					curInfo = clone(treasureAttr)
  				elseif skynet.timex() >= curInfo["expire_time"] -  curInfo.cool_time * oneDay then --未冷却
a85b344f   zhangqijia   feat: 挂机图鉴
138
  					curInfo = nil
e639a6b9   zhangqijia   fix: 挂机图鉴-绑定关卡
139
140
  				else
  					curInfo = clone(treasureAttr)
a85b344f   zhangqijia   feat: 挂机图鉴
141
142
  				end
  			else
1199daf9   zhangqijia   fix: 挂机图鉴, 增加宝藏CD检查
143
  				if skynet.timex() >= curInfo["expire_time"] then
a85b344f   zhangqijia   feat: 挂机图鉴
144
145
  					treasureList[treasureAttr.id] = nil
  				end
e639a6b9   zhangqijia   fix: 挂机图鉴-绑定关卡
146
  				curInfo = clone(treasureAttr)
a85b344f   zhangqijia   feat: 挂机图鉴
147
  			end
a85b344f   zhangqijia   feat: 挂机图鉴
148
149
150
151
152
153
154
155
156
157
158
  		end
  	else
  		curInfo = clone(treasureAttr)
  	end
  
  	return curInfo
  end
  
  --资源
  function Daily:checkTreasureBase(treasureList, treasureBase, removeId)
  	local tmptreasure = {}
251d8e5e   zhangqijia   fix: 挂机宝鉴,宝藏CD的bug
159
  	local num = 0
a85b344f   zhangqijia   feat: 挂机图鉴
160
161
  	for k, val in pairs(treasureList) do
  		if removeId and val.id == removeId then
251d8e5e   zhangqijia   fix: 挂机宝鉴,宝藏CD的bug
162
  			treasureList[k] = nil
a85b344f   zhangqijia   feat: 挂机图鉴
163
164
165
166
  		else
  			if treasureBase >= val.treasure_value then
  				treasureBase = treasureBase - val.treasure_value
  				tmptreasure[val.id] = val
251d8e5e   zhangqijia   fix: 挂机宝鉴,宝藏CD的bug
167
  				num = num + 1
a85b344f   zhangqijia   feat: 挂机图鉴
168
169
  			end
  		end
e639a6b9   zhangqijia   fix: 挂机图鉴-绑定关卡
170
  
a85b344f   zhangqijia   feat: 挂机图鉴
171
  	end
251d8e5e   zhangqijia   fix: 挂机宝鉴,宝藏CD的bug
172
  	return tmptreasure, num
a85b344f   zhangqijia   feat: 挂机图鉴
173
174
  end
  
e639a6b9   zhangqijia   fix: 挂机图鉴-绑定关卡
175
176
177
178
179
180
181
182
  --绑定通关关卡
  function Daily:checkChapters()
  	local  chapters = {}
  	local tmp_chapters = {}
  	local treasureList = self:getProperty("treasureList")
  	if next(treasureList) ~= nil then
  		for id, curInfo in pairs(treasureList) do
  			if curInfo["end_time"] then
251d8e5e   zhangqijia   fix: 挂机宝鉴,宝藏CD的bug
183
184
  				if skynet.timex() < curInfo["end_time"] then
  					tmp_chapters[curInfo.chapter_id] = curInfo
e639a6b9   zhangqijia   fix: 挂机图鉴-绑定关卡
185
  				end
e639a6b9   zhangqijia   fix: 挂机图鉴-绑定关卡
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
  			end
  		end
  	end
  
  	for chapter_id, val in pairs(csvdb["idle_battleCsv"]) do
  		if self.owner:checkHangPass(chapter_id) then
  			if next(tmp_chapters) == nil then
  				chapters[chapter_id] = val
  			else
  				if not tmp_chapters[chapter_id] then
  					chapters[chapter_id] = val
  				end
  			end
  		end
  	end
  	return chapters
  end
  
a85b344f   zhangqijia   feat: 挂机图鉴
204
205
206
  --权重
  function Daily:checkTreasureWeight(treasureList, tmptreasure, treasureBase)
  	local removeId
e639a6b9   zhangqijia   fix: 挂机图鉴-绑定关卡
207
  	local chapters = self:checkChapters()
251d8e5e   zhangqijia   fix: 挂机宝鉴,宝藏CD的bug
208
  	local treasure
e639a6b9   zhangqijia   fix: 挂机图鉴-绑定关卡
209
210
  	if next(chapters) == nil then return end
  
a85b344f   zhangqijia   feat: 挂机图鉴
211
  	while next(tmptreasure) do
251d8e5e   zhangqijia   fix: 挂机宝鉴,宝藏CD的bug
212
213
214
  		local tmp, num = self:checkTreasureBase(tmptreasure, treasureBase, removeId)
  
  		if num == 0 then
a85b344f   zhangqijia   feat: 挂机图鉴
215
  			break
251d8e5e   zhangqijia   fix: 挂机宝鉴,宝藏CD的bug
216
217
218
219
220
221
222
223
224
225
  		elseif num == 1 then
  			for _, val in pairs(tmp) do
  				treasure = val
  			end
  		else
  			local id = math.randWeight(tmp, "weight") --宝藏id
  			if not id then
  				break
  			end
  			treasure = tmp[id]
a85b344f   zhangqijia   feat: 挂机图鉴
226
  		end
251d8e5e   zhangqijia   fix: 挂机宝鉴,宝藏CD的bug
227
  	
a85b344f   zhangqijia   feat: 挂机图鉴
228
229
230
231
232
233
  		if treasureBase >= treasure.treasure_value  then
  			--扣除资源值
  			treasureBase =  treasureBase - treasure.treasure_value
  		else
  			break
  		end
e639a6b9   zhangqijia   fix: 挂机图鉴-绑定关卡
234
  		local chapterId = math.randWeight(chapters, "treasure_weight") --关卡id
a85b344f   zhangqijia   feat: 挂机图鉴
235
236
237
238
239
  		if not chapterId then
  			break
  		end
  
  		treasure.chapter_id = chapterId
251d8e5e   zhangqijia   fix: 挂机宝鉴,宝藏CD的bug
240
241
  		treasureList[treasure.id] = treasure
  		removeId = treasure.id
a85b344f   zhangqijia   feat: 挂机图鉴
242
243
244
245
246
247
248
249
250
251
252
253
  	end
  end
  
  --chapterId
  function Daily:checkTreasureChapterId(curInfo, treasureList, chapterId)
  	local treasure = nil
  
  	if not curInfo then
  		print("curInfo is nil")
  		return treasure
  	end
  
1199daf9   zhangqijia   fix: 挂机图鉴, 增加宝藏CD检查
254
255
256
257
258
  	--开始挖宝关卡ID=挂机关卡ID
  	if chapterId == curInfo.chapter_id then
  		--开始挖宝
  		if not curInfo["end_time"] then
  			curInfo["end_time"] = skynet.timex() + curInfo.working_time
a85b344f   zhangqijia   feat: 挂机图鉴
259
  		else
251d8e5e   zhangqijia   fix: 挂机宝鉴,宝藏CD的bug
260
261
262
263
264
  			if skynet.timex() >= curInfo["end_time"] then
  				if curInfo.cool_time > 1 then
  					--宝藏冷却时间
  					if not curInfo["expire_time"] then
  						treasure = treasureList[curInfo.id]
1199daf9   zhangqijia   fix: 挂机图鉴, 增加宝藏CD检查
265
266
  						curInfo["expire_time"] = skynet.timex() + curInfo.cool_time * oneDay
  					else
251d8e5e   zhangqijia   fix: 挂机宝鉴,宝藏CD的bug
267
268
269
270
  						--已经领取宝藏 检索宝藏冷却时间
  						if skynet.timex() >= curInfo["expire_time"] then
  							treasureList[curInfo.id] = nil
  						end
1199daf9   zhangqijia   fix: 挂机图鉴, 增加宝藏CD检查
271
  					end
251d8e5e   zhangqijia   fix: 挂机宝鉴,宝藏CD的bug
272
273
274
  				else
  					treasure = treasureList[curInfo.id]
  					treasureList[curInfo.id] = nil
1199daf9   zhangqijia   fix: 挂机图鉴, 增加宝藏CD检查
275
  				end
a85b344f   zhangqijia   feat: 挂机图鉴
276
277
278
  			end
  		end
  	else
1199daf9   zhangqijia   fix: 挂机图鉴, 增加宝藏CD检查
279
280
  		--已经开始挖宝
  		if curInfo["end_time"] then
251d8e5e   zhangqijia   fix: 挂机宝鉴,宝藏CD的bug
281
282
283
284
285
  			if skynet.timex() >= curInfo["end_time"] then
  				if curInfo.cool_time > 1 then
  					--宝藏冷却时间
  					if not curInfo["expire_time"] then
  						treasure = treasureList[curInfo.id]
1199daf9   zhangqijia   fix: 挂机图鉴, 增加宝藏CD检查
286
287
  						curInfo["expire_time"] = skynet.timex() + curInfo.cool_time * oneDay
  					else
251d8e5e   zhangqijia   fix: 挂机宝鉴,宝藏CD的bug
288
289
290
291
  						--已经领取宝藏 检索宝藏冷却时间
  						if skynet.timex() >= curInfo["expire_time"] then
  							treasureList[curInfo.id] = nil
  						end
1199daf9   zhangqijia   fix: 挂机图鉴, 增加宝藏CD检查
292
293
  					end
  				else
251d8e5e   zhangqijia   fix: 挂机宝鉴,宝藏CD的bug
294
295
  					treasure = treasureList[curInfo.id]
  					treasureList[curInfo.id] = nil
1199daf9   zhangqijia   fix: 挂机图鉴, 增加宝藏CD检查
296
  				end
251d8e5e   zhangqijia   fix: 挂机宝鉴,宝藏CD的bug
297
298
  			else
  				curInfo["end_time"]	= nil
a85b344f   zhangqijia   feat: 挂机图鉴
299
300
301
302
303
304
305
306
  			end
  		end
  	end
  	return treasure
  end
  
  function Daily:buyTreasure(treasureList)
  	local boughtTreasurer = {}
f0de8a60   zhangqijia   挖宝跨天,前一天天正在挖的宝被刷掉...
307
  	local treasureBase = self:getProperty("treasureBase")
a85b344f   zhangqijia   feat: 挂机图鉴
308
309
310
  	for id, val in pairs(treasureList) do
  		treasureBase = treasureBase - val.treasure_value
  		if treasureBase < 0 then
1199daf9   zhangqijia   fix: 挂机图鉴, 增加宝藏CD检查
311
  			treasureBase = treasureBase + val.treasure_value
a85b344f   zhangqijia   feat: 挂机图鉴
312
313
314
315
316
  			return
  		else
  			boughtTreasurer[id] = val
  		end
  	end
f0de8a60   zhangqijia   挖宝跨天,前一天天正在挖的宝被刷掉...
317
  	self:updateProperty({field = "treasureBase", value = treasureBase})
a85b344f   zhangqijia   feat: 挂机图鉴
318
319
320
321
322
323
324
325
326
327
  	return boughtTreasurer
  end
  
  --重置宝藏图鉴
  function Daily:resetTreasureList()
  	self:updateProperty({field = "treasureList", value = {}})
  end
  
  --宝藏图鉴
  function Daily:getTreasrueList()
a85b344f   zhangqijia   feat: 挂机图鉴
328
  	local tmpcsv = csvdb["idle_treasureCsv"]
251d8e5e   zhangqijia   fix: 挂机宝鉴,宝藏CD的bug
329
  	local treasureList = self:getProperty("treasureList") or {} --挖宝列表 过期删除 领取奖励删除 跨天更新
a85b344f   zhangqijia   feat: 挂机图鉴
330
331
332
333
334
335
336
337
338
339
340
341
342
343
  	local tmptreasure = {}
  	local treasureBase = globalCsv.idle_treasure_base
  	for id, val in pairs(tmpcsv) do
  		if self:checkUnlock(val) == true then
  			local treasure = self:checkTreasureExpired(val, treasureList)
  			if treasure then
  				table.insert(tmptreasure, treasure)
  			end
  		end
  	end
  	table.sort(tmptreasure, function (a,b) return a.treasure_value > b.treasure_value end)
  
  	self:checkTreasureWeight(treasureList, tmptreasure, treasureBase)
  	self:updateProperty({field = "treasureList", value = treasureList})
f0de8a60   zhangqijia   挖宝跨天,前一天天正在挖的宝被刷掉...
344
  	self:updateProperty({field = "treasureBase", value = treasureBase})
a85b344f   zhangqijia   feat: 挂机图鉴
345
346
347
348
349
350
  	return treasureList
  end
  
  
  --检索挖宝列表
  function Daily:checkTreasureList(chapterId)
251d8e5e   zhangqijia   fix: 挂机宝鉴,宝藏CD的bug
351
  	local treasureList = self:getProperty("treasureList") or {}
a85b344f   zhangqijia   feat: 挂机图鉴
352
353
354
355
356
357
358
359
360
  	local tmptreasure = {}
  	for id, val in pairs(treasureList) do
  		local treasure = self:checkTreasureChapterId(val, treasureList, chapterId)
  		if treasure ~= nil then
  			tmptreasure[id] = treasure
  		end
  	end
  
  	if next(tmptreasure) == nil then
251d8e5e   zhangqijia   fix: 挂机宝鉴,宝藏CD的bug
361
  		self:updateProperty({field = "treasureList", value = treasureList})
a85b344f   zhangqijia   feat: 挂机图鉴
362
363
364
365
366
367
368
  		return nil
  	end
  	local boughtTreasurer = self:buyTreasure(tmptreasure)
  	self:updateProperty({field = "treasureList", value = treasureList})
  	return boughtTreasurer
  end
  
be9c9ca6   zhouahaihai   角色评论
369
  function Daily:data()
a43410e1   zhengshouren   整理格式,使用tab替代空格
370
  	return {
a43410e1   zhengshouren   整理格式,使用tab替代空格
371
  		hangQC = self:getProperty("hangQC"),
87cc3a35   zhengshouren   餐厅建筑升级逻辑
372
  		dinerQC = self:getProperty("dinerQC"),
09be9059   zhouhaihai   冒险接口
373
  		advBC = self:getProperty("advBC"),
e38b9c49   zhouhaihai   无尽次数
374
375
  		advElC = self:getProperty("advElC"),
  		advElBC = self:getProperty("advElBC"),
bab30666   zhouhaihai   增加通用功能等级 字段
376
  		advWs = self:getProperty("advWs"),
f60b89b1   zhouhaihai   奖励副本
377
  		bonusC = self:getProperty("bonusC"),
c384626d   zhouhaihai   好友
378
379
  		giveFP = self:getProperty("giveFP"),
  		getFP = self:getProperty("getFP"),
4cf74232   zhouhaihai   pvp
380
  		pvpFree = self:getProperty("pvpFree"),
4c5d72ab   zhouhaihai   高级pvp
381
  		pvpFreeH = self:getProperty("pvpFreeH"),
cccc9c70   zhouhaihai   商城
382
383
  		dailySDC = self:getProperty("dailySDC"),
  		dailySDD = self:getProperty("dailySDD"),
9ced5432   zhouhaihai   冒险支援效果 保底事件
384
  		advSupRe = self:getProperty("advSupRe"),
d51114bd   wangyujie   完成需求:每日金币购买
385
  		goldBuyT = self:getProperty("goldBuyT"),
1a0b3c56   liuzujun   抽卡保底,切换定向卡池
386
387
  		unlockPool = self:getProperty("unlockPool"),
  		curPool = self:getProperty("curPool"),
a85b344f   zhangqijia   feat: 挂机图鉴
388
  		treasureList = self:getProperty("treasureList"),
a43410e1   zhengshouren   整理格式,使用tab替代空格
389
  	}
be9c9ca6   zhouahaihai   角色评论
390
391
392
  end
  
  return Daily