Commit 39e9c979dbc40e4d3a08337d773e51701fa514f7
1 parent
4c8655ff
Exists in
master
提交
Showing
5 changed files
with
85 additions
and
370 deletions
Show diff stats
src/HttpServer/jsonconf/DailyTask.json
1 | 1 | [ |
2 | 2 | { |
3 | 3 | "id": 1, |
4 | - "task": "领取%d%个红包", | |
5 | - "num": 2, | |
6 | - "reward": [8,1], | |
7 | - "type": 5 | |
4 | + "type": 1, | |
5 | + "parameter": 5, | |
6 | + "desc": "在线%d分钟", | |
7 | + "reward": [1,500] | |
8 | 8 | }, |
9 | 9 | { |
10 | 10 | "id": 2, |
11 | - "task": "领取%d%个红包", | |
12 | - "num": 5, | |
13 | - "reward": [8,1], | |
14 | - "type": 5 | |
11 | + "type": 1, | |
12 | + "parameter": 10, | |
13 | + "desc": "在线%d分钟", | |
14 | + "reward": [1,1000] | |
15 | 15 | }, |
16 | 16 | { |
17 | 17 | "id": 3, |
18 | - "task": "领取%d%个红包", | |
19 | - "num": 7, | |
20 | - "reward": [8,1], | |
21 | - "type": 5 | |
18 | + "type": 1, | |
19 | + "parameter": 30, | |
20 | + "desc": "在线%d分钟", | |
21 | + "reward": [1,2000] | |
22 | 22 | }, |
23 | 23 | { |
24 | 24 | "id": 4, |
25 | - "task": "领取%d%个红包", | |
26 | - "num": 10, | |
27 | - "reward": [8,1], | |
28 | - "type": 5 | |
25 | + "type": 1, | |
26 | + "parameter": 60, | |
27 | + "desc": "在线%d分钟", | |
28 | + "reward": [1,5000] | |
29 | 29 | }, |
30 | 30 | { |
31 | 31 | "id": 5, |
32 | - "task": "领取%d%个红包", | |
33 | - "num": 15, | |
34 | - "reward": [8,1], | |
35 | - "type": 5 | |
32 | + "type": 2, | |
33 | + "parameter": 5, | |
34 | + "desc": "答对%d首歌曲", | |
35 | + "reward": [1,500] | |
36 | 36 | }, |
37 | 37 | { |
38 | 38 | "id": 6, |
39 | - "task": "领取%d%个红包", | |
40 | - "num": 20, | |
41 | - "reward": [8,1], | |
42 | - "type": 5 | |
39 | + "type": 2, | |
40 | + "parameter": 10, | |
41 | + "desc": "答对%d首歌曲", | |
42 | + "reward": [1,1000] | |
43 | 43 | }, |
44 | 44 | { |
45 | 45 | "id": 7, |
46 | - "task": "领取%d%个红包", | |
47 | - "num": 25, | |
48 | - "reward": [8,1], | |
49 | - "type": 5 | |
46 | + "type": 2, | |
47 | + "parameter": 20, | |
48 | + "desc": "答对%d首歌曲", | |
49 | + "reward": [1,2000] | |
50 | 50 | }, |
51 | 51 | { |
52 | 52 | "id": 8, |
53 | - "task": "领取%d%个红包", | |
54 | - "num": 30, | |
55 | - "reward": [8,1], | |
56 | - "type": 5 | |
53 | + "type": 2, | |
54 | + "parameter": 50, | |
55 | + "desc": "答对%d首歌曲", | |
56 | + "reward": [1,5000] | |
57 | 57 | }, |
58 | 58 | { |
59 | 59 | "id": 9, |
60 | - "task": "领取%d%个红包", | |
61 | - "num": 35, | |
62 | - "reward": [8,1], | |
63 | - "type": 5 | |
60 | + "type": 3, | |
61 | + "parameter": 5, | |
62 | + "desc": "观看广告%d次", | |
63 | + "reward": [1,1000] | |
64 | 64 | }, |
65 | 65 | { |
66 | 66 | "id": 10, |
67 | - "task": "领取%d%个红包", | |
68 | - "num": 40, | |
69 | - "reward": [8,1], | |
70 | - "type": 5 | |
71 | - }, | |
72 | - { | |
73 | - "id": 11, | |
74 | - "task": "领取%d%个红包", | |
75 | - "num": 45, | |
76 | - "reward": [8,1], | |
77 | - "type": 5 | |
78 | - }, | |
79 | - { | |
80 | - "id": 12, | |
81 | - "task": "领取%d%个红包", | |
82 | - "num": 50, | |
83 | - "reward": [8,1], | |
84 | - "type": 5 | |
85 | - }, | |
86 | - { | |
87 | - "id": 13, | |
88 | - "task": "今日通过%d%关", | |
89 | - "num": 2, | |
90 | - "reward": [8,1], | |
91 | - "type": 3 | |
92 | - }, | |
93 | - { | |
94 | - "id": 14, | |
95 | - "task": "今日通过%d%关", | |
96 | - "num": 4, | |
97 | - "reward": [8,1], | |
98 | - "type": 3 | |
99 | - }, | |
100 | - { | |
101 | - "id": 15, | |
102 | - "task": "今日通过%d%关", | |
103 | - "num": 6, | |
104 | - "reward": [8,1], | |
105 | - "type": 3 | |
106 | - }, | |
107 | - { | |
108 | - "id": 16, | |
109 | - "task": "今日通过%d%关", | |
110 | - "num": 8, | |
111 | - "reward": [8,1], | |
112 | - "type": 3 | |
113 | - }, | |
114 | - { | |
115 | - "id": 17, | |
116 | - "task": "今日通过%d%关", | |
117 | - "num": 10, | |
118 | - "reward": [8,1], | |
119 | - "type": 3 | |
120 | - }, | |
121 | - { | |
122 | - "id": 18, | |
123 | - "task": "今日通过%d%关", | |
124 | - "num": 15, | |
125 | - "reward": [8,1], | |
126 | - "type": 3 | |
127 | - }, | |
128 | - { | |
129 | - "id": 19, | |
130 | - "task": "今日通过%d%关", | |
131 | - "num": 20, | |
132 | - "reward": [8,1], | |
133 | - "type": 3 | |
134 | - }, | |
135 | - { | |
136 | - "id": 20, | |
137 | - "task": "今日通过%d%关", | |
138 | - "num": 25, | |
139 | - "reward": [8,1], | |
140 | - "type": 3 | |
141 | - }, | |
142 | - { | |
143 | - "id": 21, | |
144 | - "task": "今日通过%d%关", | |
145 | - "num": 30, | |
146 | - "reward": [8,1], | |
147 | - "type": 3 | |
148 | - }, | |
149 | - { | |
150 | - "id": 22, | |
151 | - "task": "今日通过%d%关", | |
152 | - "num": 40, | |
153 | - "reward": [8,1], | |
154 | - "type": 3 | |
155 | - }, | |
156 | - { | |
157 | - "id": 23, | |
158 | - "task": "今日通过%d%关", | |
159 | - "num": 50, | |
160 | - "reward": [8,1], | |
161 | - "type": 3 | |
162 | - }, | |
163 | - { | |
164 | - "id": 24, | |
165 | - "task": "使用%d%次道具", | |
166 | - "num": 2, | |
167 | - "reward": [8,1], | |
168 | - "type": 4 | |
169 | - }, | |
170 | - { | |
171 | - "id": 25, | |
172 | - "task": "使用%d%次道具", | |
173 | - "num": 4, | |
174 | - "reward": [8,1], | |
175 | - "type": 4 | |
176 | - }, | |
177 | - { | |
178 | - "id": 26, | |
179 | - "task": "使用%d%次道具", | |
180 | - "num": 6, | |
181 | - "reward": [8,1], | |
182 | - "type": 4 | |
183 | - }, | |
184 | - { | |
185 | - "id": 27, | |
186 | - "task": "使用%d%次道具", | |
187 | - "num": 8, | |
188 | - "reward": [8,1], | |
189 | - "type": 4 | |
190 | - }, | |
191 | - { | |
192 | - "id": 28, | |
193 | - "task": "使用%d%次道具", | |
194 | - "num": 10, | |
195 | - "reward": [8,1], | |
196 | - "type": 4 | |
197 | - }, | |
198 | - { | |
199 | - "id": 29, | |
200 | - "task": "使用%d%次道具", | |
201 | - "num": 15, | |
202 | - "reward": [8,1], | |
203 | - "type": 4 | |
204 | - }, | |
205 | - { | |
206 | - "id": 30, | |
207 | - "task": "使用%d%次道具", | |
208 | - "num": 20, | |
209 | - "reward": [8,1], | |
210 | - "type": 4 | |
211 | - }, | |
212 | - { | |
213 | - "id": 31, | |
214 | - "task": "使用%d%次道具", | |
215 | - "num": 25, | |
216 | - "reward": [8,1], | |
217 | - "type": 4 | |
218 | - }, | |
219 | - { | |
220 | - "id": 32, | |
221 | - "task": "使用%d%次道具", | |
222 | - "num": 30, | |
223 | - "reward": [8,1], | |
224 | - "type": 4 | |
225 | - }, | |
226 | - { | |
227 | - "id": 33, | |
228 | - "task": "使用%d%次道具", | |
229 | - "num": 40, | |
230 | - "reward": [8,1], | |
231 | - "type": 4 | |
232 | - }, | |
233 | - { | |
234 | - "id": 34, | |
235 | - "task": "使用%d%次道具", | |
236 | - "num": 50, | |
237 | - "reward": [8,1], | |
238 | - "type": 4 | |
239 | - }, | |
240 | - { | |
241 | - "id": 35, | |
242 | - "task": "累计在线%d%分钟", | |
243 | - "num": 5, | |
244 | - "reward": [8,1], | |
245 | - "type": 7 | |
246 | - }, | |
247 | - { | |
248 | - "id": 36, | |
249 | - "task": "累计在线%d%分钟", | |
250 | - "num": 10, | |
251 | - "reward": [8,1], | |
252 | - "type": 7 | |
253 | - }, | |
254 | - { | |
255 | - "id": 37, | |
256 | - "task": "累计在线%d%分钟", | |
257 | - "num": 15, | |
258 | - "reward": [8,1], | |
259 | - "type": 7 | |
260 | - }, | |
261 | - { | |
262 | - "id": 38, | |
263 | - "task": "累计在线%d%分钟", | |
264 | - "num": 20, | |
265 | - "reward": [8,1], | |
266 | - "type": 7 | |
267 | - }, | |
268 | - { | |
269 | - "id": 39, | |
270 | - "task": "累计在线%d%分钟", | |
271 | - "num": 25, | |
272 | - "reward": [8,1], | |
273 | - "type": 7 | |
274 | - }, | |
275 | - { | |
276 | - "id": 40, | |
277 | - "task": "累计在线%d%分钟", | |
278 | - "num": 30, | |
279 | - "reward": [8,1], | |
280 | - "type": 7 | |
281 | - }, | |
282 | - { | |
283 | - "id": 41, | |
284 | - "task": "累计在线%d%分钟", | |
285 | - "num": 35, | |
286 | - "reward": [8,1], | |
287 | - "type": 7 | |
288 | - }, | |
289 | - { | |
290 | - "id": 42, | |
291 | - "task": "累计在线%d%分钟", | |
292 | - "num": 40, | |
293 | - "reward": [8,1], | |
294 | - "type": 7 | |
295 | - }, | |
296 | - { | |
297 | - "id": 43, | |
298 | - "task": "累计在线%d%分钟", | |
299 | - "num": 45, | |
300 | - "reward": [8,1], | |
301 | - "type": 7 | |
302 | - }, | |
303 | - { | |
304 | - "id": 44, | |
305 | - "task": "累计在线%d%分钟", | |
306 | - "num": 50, | |
307 | - "reward": [8,1], | |
308 | - "type": 7 | |
309 | - }, | |
310 | - { | |
311 | - "id": 45, | |
312 | - "task": "累计在线%d%分钟", | |
313 | - "num": 55, | |
314 | - "reward": [8,1], | |
315 | - "type": 7 | |
316 | - }, | |
317 | - { | |
318 | - "id": 46, | |
319 | - "task": "累计在线%d%分钟", | |
320 | - "num": 60, | |
321 | - "reward": [8,1], | |
322 | - "type": 7 | |
323 | - }, | |
324 | - { | |
325 | - "id": 47, | |
326 | - "task": "累计在线%d%分钟", | |
327 | - "num": 70, | |
328 | - "reward": [8,1], | |
329 | - "type": 7 | |
330 | - }, | |
331 | - { | |
332 | - "id": 48, | |
333 | - "task": "累计在线%d%分钟", | |
334 | - "num": 80, | |
335 | - "reward": [8,1], | |
336 | - "type": 7 | |
337 | - }, | |
338 | - { | |
339 | - "id": 49, | |
340 | - "task": "累计在线%d%分钟", | |
341 | - "num": 90, | |
342 | - "reward": [8,1], | |
343 | - "type": 7 | |
344 | - }, | |
345 | - { | |
346 | - "id": 50, | |
347 | - "task": "每日登录", | |
348 | - "num": 1, | |
349 | - "reward": [8,1], | |
350 | - "type": 1 | |
67 | + "type": 3, | |
68 | + "parameter": 10, | |
69 | + "desc": "观看广告%d次", | |
70 | + "reward": [1,5000] | |
351 | 71 | } |
352 | 72 | ] |
353 | 73 | \ No newline at end of file | ... | ... |
src/HttpServer/logic/constdef.go
... | ... | @@ -2,8 +2,7 @@ package logic |
2 | 2 | |
3 | 3 | //任务成就类型枚举 协议上报用 |
4 | 4 | const ( |
5 | - TASKTYPE_MERGE = 1 //表示合成 | |
6 | - TASKTYPE_WATCHADS = 2 //表示管看广告次数 | |
5 | + TASKTYPE_WATCHADS = 3 //表示管看广告次数 | |
7 | 6 | |
8 | 7 | ) |
9 | 8 | |
... | ... | @@ -12,7 +11,7 @@ const ( |
12 | 11 | //DAILY_TASKTYPE_LOGIN = 1 //1 每日登录 |
13 | 12 | |
14 | 13 | DAILY_TASKTYPE_ONLINEMIN = 1 //在线分钟数 |
15 | - DAILY_TASKTYPE_MERGE = 2 //合成次数 | |
14 | + DAILY_TASKTYPE_MERGE = 2 //猜个次数 | |
16 | 15 | DAILY_TASKTYPE_WATCHADS = 3 //观看广告次数 |
17 | 16 | |
18 | 17 | ) | ... | ... |
src/HttpServer/logic/datadef.go
... | ... | @@ -195,15 +195,8 @@ type GettaskrewardReq struct { |
195 | 195 | } |
196 | 196 | |
197 | 197 | type GettaskrewardData struct { |
198 | - Lv int `json:"lv"` | |
199 | - Costtime int `json:"costtime"` | |
200 | - Rewardstar int `json:"rewardstar"` | |
201 | - Chuiitem int `json:"chuiitem"` | |
202 | - Shuaitem int `json:"shuaitem"` | |
203 | - Swapitem int `json:"swapitem"` | |
204 | - Eliminitem int `json:"eliminitem"` | |
205 | - Goldnum int `json:"goldnum"` | |
206 | - Addgold int `json:"addgold"` | |
198 | + Totalrednum int `json:"totalrednum"` | |
199 | + Getrednum int `json:"getrednum"` | |
207 | 200 | } |
208 | 201 | type GettaskrewardResp struct { |
209 | 202 | Code int `json:"code"` |
... | ... | @@ -261,6 +254,7 @@ type QuerysigndataResp struct { |
261 | 254 | type FetchredbagReq struct { |
262 | 255 | Gameid string `json:"gameid"` |
263 | 256 | Channel string `json:"channel"` |
257 | + Bagnum int `json:"bagnum"` | |
264 | 258 | } |
265 | 259 | |
266 | 260 | type FetchredbagData struct { |
... | ... | @@ -383,7 +377,7 @@ type TaskList struct { |
383 | 377 | //其中提取次数和当日登陆在userdata中记录 |
384 | 378 | type TaskInfo struct { |
385 | 379 | OnlineMin int //在线分钟数 |
386 | - MergeCnt int //合成次数 | |
380 | + GuessSong int //合成次数 | |
387 | 381 | WatchAds int //观看广告次数 |
388 | 382 | } |
389 | 383 | ... | ... |
src/HttpServer/logic/function.go
... | ... | @@ -109,8 +109,8 @@ func (uinfo *UserData) CalcTaskList(list *TaskList, uniqueid string) *TaskList { |
109 | 109 | } |
110 | 110 | |
111 | 111 | if cfg.TaskType == DAILY_TASKTYPE_MERGE { |
112 | - list.Taskdata[k].Taskprogress = uinfo.Task.MergeCnt | |
113 | - if uinfo.Task.MergeCnt >= cfg.Num { | |
112 | + list.Taskdata[k].Taskprogress = uinfo.Task.GuessSong | |
113 | + if uinfo.Task.GuessSong >= cfg.Num { | |
114 | 114 | list.Taskdata[k].Taskstatus = 2 |
115 | 115 | } |
116 | 116 | } else if cfg.TaskType == DAILY_TASKTYPE_ONLINEMIN { |
... | ... | @@ -442,48 +442,57 @@ func (uinfo *UserData) HandleGetTaskReward(req *GettaskrewardReq, resp *Gettaskr |
442 | 442 | for i := 0; i < sub; i++ { |
443 | 443 | rtype := cfg.Reward[i*2] |
444 | 444 | rnum := cfg.Reward[i*2+1] |
445 | - r1, r2, r3, r4, r5, r6, r7, r8 := uinfo.RewardUser(rtype, rnum, req.Gameid, req.Channel, uuid) | |
446 | - if resp.Data.Lv != r1 { | |
447 | - resp.Data.Lv = r1 | |
448 | - resp.Data.Costtime = uinfo.UpLvCostTime / 3600 | |
449 | - } | |
450 | - resp.Data.Rewardstar += r2 | |
451 | - resp.Data.Chuiitem += r3 | |
452 | - resp.Data.Shuaitem += r4 | |
453 | - resp.Data.Swapitem += r5 | |
454 | - resp.Data.Eliminitem += r6 | |
455 | - resp.Data.Goldnum = r7 | |
456 | - resp.Data.Addgold = r8 | |
445 | + _, _, _, _, _, _, r7, r8 := uinfo.RewardUser(rtype, rnum, req.Gameid, req.Channel, uuid) | |
446 | + resp.Data.Getrednum = r8 | |
447 | + resp.Data.Totalrednum = r7 | |
448 | + break | |
457 | 449 | } |
458 | 450 | |
459 | 451 | return nil |
460 | 452 | } |
461 | 453 | |
462 | 454 | //领取红包 按次数计算 |
463 | -func (uinfo *UserData) FetchRedPacket(gameid string, channel string, uuid int) int { | |
464 | - uinfo.FetchRedCnt++ | |
465 | - addgold := jsonconf.GetRedpacketNum(uinfo.FetchRedCnt) | |
466 | - if addgold == 0 { | |
467 | - logger.Error("FetchRedPacket failed addgold=0") | |
468 | - return 0 | |
469 | - } | |
455 | +func (uinfo *UserData) FetchRedPacket(gameid string, channel string, uuid int,num int) int { | |
456 | + sunnum := num | |
457 | + sunaddnum := 0 | |
458 | + for { | |
459 | + if sunnum == 0 { | |
460 | + break | |
461 | + } | |
462 | + uinfo.FetchRedCnt++ | |
463 | + sunnum-- | |
464 | + addgold := jsonconf.GetRedpacketNum(uinfo.FetchRedCnt) | |
465 | + if addgold == 0 { | |
466 | + logger.Error("FetchRedPacket failed addgold=0") | |
467 | + continue | |
468 | + } | |
470 | 469 | |
471 | - goldnum, realaddnum, err := AddCoinToSdk(uuid, addgold, gameid, channel, 102) | |
472 | - if err != nil { | |
473 | - logger.Error("RewardUser failer err=%v", err) | |
470 | + goldnum, realaddnum, err := AddCoinToSdk(uuid, addgold, gameid, channel, 102) | |
471 | + if err != nil { | |
472 | + logger.Error("RewardUser failer err=%v", err) | |
473 | + continue | |
474 | + } | |
475 | + sunaddnum += realaddnum | |
476 | + uinfo.RealGold = goldnum | |
474 | 477 | } |
475 | - uinfo.RealGold = goldnum | |
478 | + | |
476 | 479 | |
477 | 480 | uniqueid := strconv.Itoa(uuid) + channel |
478 | 481 | SaveUserInfo(uinfo, uniqueid) |
479 | - return realaddnum | |
482 | + return sunaddnum | |
480 | 483 | } |
481 | 484 | |
482 | 485 | func (uinfo *UserData) RewardUser(rtype int, num int, gameid string, channel string, uuid int) (int, int, int, int, int, int, int, int) { |
483 | 486 | logger.Info("RewardUser rtype=%v,num=%v", rtype, num) |
484 | 487 | switch rtype { |
485 | 488 | case REWARDTYPE_STAR: |
486 | - return 0, num, 0, 0, 0, 0, 0, 0 | |
489 | + readadd := num / 100 | |
490 | + goldnum, _, err := AddCoinToSdk(uuid, readadd, gameid, channel, 102) | |
491 | + if err != nil { | |
492 | + logger.Error("RewardUser failer err=%v", err) | |
493 | + } | |
494 | + uinfo.RealGold = goldnum | |
495 | + return 0, 0, 0, 0, 0, 0, uinfo.RealGold, readadd | |
487 | 496 | case REWARDTYPE_CHUI: |
488 | 497 | return 0, 0, num, 0, 0, 0, 0, 0 |
489 | 498 | case REWARDTYPE_SHUA: |
... | ... | @@ -877,7 +886,7 @@ func (u *UserData) HandlePassDay(uuid int, channel string) { |
877 | 886 | u.GetCashCnt = 0 |
878 | 887 | |
879 | 888 | u.Task.OnlineMin = 0 |
880 | - u.Task.MergeCnt = 0 | |
889 | + u.Task.GuessSong = 0 | |
881 | 890 | u.Task.WatchAds = 0 |
882 | 891 | u.ShakeTime = SHAKELIMIT |
883 | 892 | u.FetchRdBagNum = 0 | ... | ... |
src/HttpServer/logic/logic.go
... | ... | @@ -735,20 +735,15 @@ func HandlerFetchredbag(w http.ResponseWriter, data string, uuid int) { |
735 | 735 | break |
736 | 736 | } |
737 | 737 | |
738 | - if uinfo.FetchRdBagNum >= DAILYFETCHREDBAGNUMLIMIT { | |
739 | - resp.Message = "当日;领取红包次数已达上限" | |
740 | - resp.Code = ERROR_SRV_ERROR | |
741 | - break | |
742 | - } | |
743 | 738 | |
744 | - readaddgold := uinfo.FetchRedPacket(rdata.Gameid, rdata.Channel, uuid) | |
739 | + readaddgold := uinfo.FetchRedPacket(rdata.Gameid, rdata.Channel, uuid,rdata.Bagnum) | |
745 | 740 | |
746 | 741 | uinfo.IsNew = 0 |
747 | 742 | uinfo.FetchRdBagNum++ |
748 | 743 | |
749 | 744 | resp.Data.Walletgold = uinfo.RealGold |
750 | 745 | resp.Data.Getgoldnum = readaddgold |
751 | - resp.Data.Leftredbagnum = DAILYFETCHREDBAGNUMLIMIT - uinfo.FetchRdBagNum | |
746 | + //resp.Data.Leftredbagnum = DAILYFETCHREDBAGNUMLIMIT - uinfo.FetchRdBagNum | |
752 | 747 | |
753 | 748 | |
754 | 749 | //保存数据 |
... | ... | @@ -994,8 +989,6 @@ func HandlerUpdatetaskandachieve(w http.ResponseWriter, data string, uuid int) { |
994 | 989 | } |
995 | 990 | |
996 | 991 | switch rdata.Tasktype { |
997 | - case TASKTYPE_MERGE: | |
998 | - uinfo.Task.MergeCnt += rdata.Value | |
999 | 992 | case TASKTYPE_WATCHADS: |
1000 | 993 | uinfo.Task.WatchAds += rdata.Value |
1001 | 994 | } | ... | ... |