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

86 lines
2.9 KiB
Go

package logic
//type PlayerRigTrammels struct {
// Group uint32 `bson:"group" key:"1"`
// Process map[uint64]uint32 `bson:"process"`
// Status map[uint32]uint32 `bson:"status"`
//}
//
//func (this *PlayerRigTrammels) BuildMsgRigTrammels() *proto.RigTrammels {
// var msg = &proto.RigTrammels{Group: this.Group}
// for key, process := range this.Process {
// level, itemId := util.Split2uint32(key)
// msg.ProcessList = append(msg.ProcessList, &proto.RigTrammelsProcess{Level: level, ItemId: itemId, Process: process})
// }
// msg.StatusList = make([]*proto.RigTrammelsStatus, len(this.Status))
// for level, status := range this.Status {
// msg.StatusList[level-1] = &proto.RigTrammelsStatus{Level: level, Status: status}
// }
// return msg
//}
//
//func (this *Player) CheckRigTrammelsStatus(itemId, level, stars uint32) {
// var changeList []*PlayerRigTrammels
// var groups = this.manager.tables.RigTrammelsExtend.Groups()
// for groupId, rigTrammelsTables := range groups {
// for _, rigTrammelsTable := range rigTrammelsTables {
// var value uint32
// switch proto.TrammelsType(rigTrammelsTable.TrammelsType) {
// case proto.TrammelsTypeStars:
// value = stars
// case proto.TrammelsTypeLevel:
// value = level
// default:
// continue
// }
//
// if value == 0 {
// continue
// }
//
// var rigTrammels = this.RigTrammels[uint32(groupId)]
// if rigTrammels != nil && rigTrammels.Status[uint32(rigTrammelsTable.Level)] >= uint32(proto.TrammelsStatusCanActivate) {
// continue
// }
//
// var achieved = true
// for _, objId := range rigTrammelsTable.Items {
// if uint32(objId) == itemId {
// if rigTrammels == nil {
// rigTrammels = &PlayerRigTrammels{Group: uint32(groupId), Process: map[uint64]uint32{}, Status: map[uint32]uint32{}}
// this.RigTrammels[uint32(groupId)] = rigTrammels
// }
//
// rigTrammels.Process[util.Compose2uint32(uint32(rigTrammelsTable.Level), itemId)] = value
// changeList = append(changeList, rigTrammels)
// }
//
// if rigTrammels == nil || rigTrammels.Process[util.Compose2uint32(uint32(rigTrammelsTable.Level), uint32(objId))] < uint32(rigTrammelsTable.TrammelsValue) {
// achieved = false
// }
// }
//
// if achieved {
// rigTrammels.Status[uint32(rigTrammelsTable.Level)] = uint32(proto.TrammelsStatusCanActivate)
// }
// }
// }
//
// if len(changeList) > 0 {
// var ackList []*proto.RigTrammels
// for _, rigTrammels := range changeList {
// this.SaveModel(rigTrammels)
// ackList = append(ackList, rigTrammels.BuildMsgRigTrammels())
// }
// _ = this.Send(proto.ModIdRig, proto.MsgIdRigTrammelsChange, &proto.MsgRigTrammelsListAck{List: ackList})
// }
//}
//
//func (this *Player) BuildMsgRigTrammelsListAck() *proto.MsgRigTrammelsListAck {
// var list []*proto.RigTrammels
// for _, rigTrammels := range this.RigTrammels {
// list = append(list, rigTrammels.BuildMsgRigTrammels())
// }
// return &proto.MsgRigTrammelsListAck{List: list}
//}