ecs/servers/game/logic/player_idle_battle.go
2025-06-04 18:17:39 +08:00

69 lines
2.5 KiB
Go

package logic
//type PlayerIdleBattle struct {
// SceneId uint32 `bson:"scene_id"`
// GetTime int64 `bson:"get_time"`
// PutTime int64 `bson:"put_time"`
//
// Rewards map[uint32]uint32 `bson:"rewards"`
//}
//
//func (this *Player) idleBattleReward(now int64) bool {
// if this.IdleBattle == nil {
// this.IdleBattle = &PlayerIdleBattle{SceneId: this.Role.MainlineSceneId, GetTime: now, PutTime: now, Rewards: map[uint32]uint32{}}
// this.SaveField("idle_battle", this.IdleBattle)
//
// _ = this.Send(proto.ModIdBattle, proto.MsgIdIdleBattleStatus, this.BuildMsgIdleBattleStatusAck())
// return true
// }
//
// var idleProfitTable = this.manager.tables.IdleProfit.Get(int(this.IdleBattle.SceneId))
// if idleProfitTable == nil {
// return false
// }
//
// if now-this.IdleBattle.PutTime < int64(idleProfitTable.Interval) {
// return false
// }
//
// var timeAddition = this.CheckMonthlyCardPrivilege(proto.MonthlyCardPrivilegeTypeIdleBattleTimeAddition)
// if this.IdleBattle.PutTime-this.IdleBattle.GetTime > int64(idleProfitTable.IdleLimit)+timeAddition {
// return false
// }
//
// var times = uint32((now - this.IdleBattle.PutTime) / int64(idleProfitTable.Interval))
// for i, itemId := range idleProfitTable.ItemId {
// this.IdleBattle.Rewards[uint32(itemId)] += uint32(idleProfitTable.ItemNum[i]) * times
// }
//
// var dropResult = this.manager.tables.DropExtend.Drop(idleProfitTable.DropId, int(times))
// for _, itemPair := range dropResult {
// this.IdleBattle.Rewards[itemPair[0]] += itemPair[1]
// }
//
// this.SaveField("idle_battle.rewards", this.IdleBattle.Rewards)
//
// this.IdleBattle.PutTime = now
// this.SaveField("idle_battle.put_time", this.IdleBattle.PutTime)
//
// if this.IdleBattle.SceneId != this.Role.MainlineSceneId {
// this.IdleBattle.SceneId = this.Role.MainlineSceneId
// this.SaveField("idle_battle.scene_id", this.IdleBattle.SceneId)
// }
//
// _ = this.Send(proto.ModIdBattle, proto.MsgIdIdleBattleStatus, this.BuildMsgIdleBattleStatusAck())
// return true
//}
//
//func (this *Player) BuildMsgIdleBattleStatusAck() *proto.MsgIdleBattleStatusAck {
// if this.IdleBattle == nil {
// return &proto.MsgIdleBattleStatusAck{}
// } else {
// var rewardList []*proto.ItemPair
// for itemId, itemNum := range this.IdleBattle.Rewards {
// rewardList = append(rewardList, &proto.ItemPair{ItemId: itemId, ItemNum: itemNum})
// }
// return &proto.MsgIdleBattleStatusAck{SceneId: this.IdleBattle.SceneId, GetTime: this.IdleBattle.GetTime, MsgRewardListAck: &proto.MsgRewardListAck{RewardList: rewardList}}
// }
//}