|
@@ -134,6 +134,7 @@ func (p *Player) Init() {
|
|
|
|
|
|
// InitDaily 每日刷新
|
|
|
func (p *Player) InitDaily() {
|
|
|
+ p.DailyRefreshTime = mhayaTime.Now().Add(-24 * time.Hour).Unix()
|
|
|
if !mhayaTime.CreateFromTimestamp(p.DailyRefreshTime).IsToday() {
|
|
|
//刷新每日任务
|
|
|
p.DailyTask.RefreshDailyTask()
|
|
@@ -585,3 +586,72 @@ func (p *Player) SetInvite(uid string) bool {
|
|
|
}
|
|
|
return true
|
|
|
}
|
|
|
+
|
|
|
+func (p *Player) ClaimRankReward(id int) param.ChangeData {
|
|
|
+ var resp param.ChangeData
|
|
|
+ if rank, ok := p.RankReward[id]; ok {
|
|
|
+ if rank.IsClaim == 0 && len(rank.Reward) > 0 {
|
|
|
+ var addItem AddItem
|
|
|
+ resp.AddItem = addItem.Add(rank.Reward)
|
|
|
+ p.Item.AddItem(rank.Reward)
|
|
|
+ p.RankReward[id].IsClaim = 1
|
|
|
+
|
|
|
+ p.RankReward[id].ClaimTime = mhayaTime.Now().Unix()
|
|
|
+ p.SetPlayerRewardLog(SourceRank, id, rank.Reward, []data.ItemReward{}, nil)
|
|
|
+ }
|
|
|
+ }
|
|
|
+ p.LevelUp()
|
|
|
+
|
|
|
+ return resp
|
|
|
+}
|
|
|
+
|
|
|
+func (p *Player) ClaimInviteReward(id int) param.ChangeData {
|
|
|
+ var resp param.ChangeData
|
|
|
+ if p.InviteReward.IsClaim == 0 {
|
|
|
+ var addItem AddItem
|
|
|
+ resp.AddItem = addItem.Add(p.InviteReward.Reward)
|
|
|
+ p.Item.AddItem(p.InviteReward.Reward)
|
|
|
+ p.InviteReward.IsClaim = 1
|
|
|
+ p.InviteReward.RewardTime = mhayaTime.Now().Unix()
|
|
|
+
|
|
|
+ p.SetPlayerRewardLog(SourceInvite, id, p.InviteReward.Reward, []data.ItemReward{}, nil)
|
|
|
+ }
|
|
|
+ p.LevelUp()
|
|
|
+
|
|
|
+ return resp
|
|
|
+}
|
|
|
+
|
|
|
+func (p *Player) ClaimAchieveTaskReward(id int) param.ChangeData {
|
|
|
+ var resp param.ChangeData
|
|
|
+ if ach, ok := p.AchieveTask[id]; ok {
|
|
|
+ if ach.Status == 1 && ach.RewardNum > 0 {
|
|
|
+ var addItem AddItem
|
|
|
+ resp.AddItem = addItem.Add(ach.Reward)
|
|
|
+ p.Item.AddItem(ach.Reward)
|
|
|
+ ach.RewardNum -= 1
|
|
|
+ p.SetPlayerRewardLog(SourceAchieveTask, id, ach.Reward, []data.ItemReward{}, nil)
|
|
|
+ }
|
|
|
+ if ach.RewardNum == 0 {
|
|
|
+ p.AchieveTask[id].Status = 2
|
|
|
+ }
|
|
|
+ }
|
|
|
+ p.LevelUp()
|
|
|
+
|
|
|
+ return resp
|
|
|
+}
|
|
|
+
|
|
|
+func (p *Player) ClaimDailyTaskReward(id int) param.ChangeData {
|
|
|
+ var resp param.ChangeData
|
|
|
+ if task, ok := p.DailyTask[id]; ok {
|
|
|
+ if task.Status == 1 {
|
|
|
+ var addItem AddItem
|
|
|
+ resp.AddItem = addItem.Add(task.Reward)
|
|
|
+ p.Item.AddItem(task.Reward)
|
|
|
+ task.Status = 2
|
|
|
+ p.SetPlayerRewardLog(SourceDailyTask, id, task.Reward, []data.ItemReward{}, nil)
|
|
|
+ }
|
|
|
+ }
|
|
|
+ p.LevelUp()
|
|
|
+
|
|
|
+ return resp
|
|
|
+}
|